Hi, I found exposing method to expose pages through walled garden here - https://learn.elgg.org/en/stable/guides/walled-garden.html
There is code:
elgg_register_route('my_plugin:public_page', [ 'path' => '/my_plugin/public_page', 'resource' => 'my_plugin/public_page', 'walled' => false, ]);
So when I want to expose wole blog then this code is like below?:
elgg_register_route('blog', [ 'path' => 'blog', 'resource' => 'blog', 'walled' => false, ]);
It doesnt work for me.
Second question where i must paste this code, i tried to paste it in blog in elgg-plugin.php file
info@elgg.org
Security issues should be reported to security@elgg.org!
©2014 the Elgg Foundation
Elgg is a registered trademark of Thematic Networks.
Cover image by RaĆ¼l Utrera is used under Creative Commons license.
Icons by Flaticon and FontAwesome.
- Jerome Bakker@jeabakker
Jerome Bakker - 0 likes
-
collection:object:blog:owner
-
collection:object:blog:friends
-
view:object:blog
-
collection:object:blog:group
-
collection:object:blog:all
-
default:object:blog
- Kosula@Kosula
Kosula - 0 likes
- Nikolai Shcherbin@rivervanrain
Nikolai Shcherbin - 1 like
The best way is to look at the code of ready-made plugins ;)
- Kosula@Kosula
Kosula - 0 likes
- Kosula@Kosula
Kosula - 0 likes
- Nikolai Shcherbin@rivervanrain
Nikolai Shcherbin - 0 likes
You must log in to post replies.What you need to do is reregister the blog routes with the additional flag 'walled => false'.
This can be done in your elgg-plugin.php, copy the routes (exactly) from the blog plugins elgg-plugin.php and add them in the section 'routes' in your elgg-plugin.php.
You'll probably don't need all routes from the blog plugin, but most.
Make sure your plugin is below the Blog plugin in the plugin list.
Or you could register an event listener in a plugin bootstrap in the boot function for the event 'route:config', 'the list from above', then you can change the config for that route to add 'walled => false'.
Thank you for your respond.
So I must for example for the path
view:object:blog
add below code in elgg-plugin.php - or my understanding of this problem is horrible wrong?
elgg_register_route('view:object:blog', [
'path' => '/blog/view/{guid}/{title?}',
'resource' => 'blog/view',
'walled' => false,
]);
In elgg-plugin.php:
Nikolai Shcherbin, yes I tried this way as you wrote.
But when I made this like this way still cant get to this section on site when log out and still is error shown that dont have permission BUT there isn't login section.
So making this like you wrote only makes that login section isn't shown but still cant see the content.
ok this working fine. Now the problem is status of the blog post. Posts with "public" status are shown right way!
Thank you!
Of course, blog posts with a non-public access level ('status' you mentioned) will not be displayed even if you're going to cancel the walled garden