Please upgrade here. These earlier versions are no longer being updated and have security issues.
HackerOne users: Testing against this community violates our program's Terms of Service and will result in your bounty being denied.
Removing the recent discussions and activity from page sidebars?
Dobby
New
I've noticed that this plugin adds recent discussions and activity in the sidebar which don't work currently on my site due to the theme I'm using, I was wondering if anyone knew how to delete this? Thanks.
0
Comments
To do it the Vanilla way, create a plugin that hooks into the controller's you don't want it to appear on and unset the modules before render. The module names you are looking for is 'DiscussionsModule' and 'RecentActivityModule'.
To paraphrase myself:
Search first
Check out the Documentation! We are always looking for new content and pull requests.
Click on insightful, awesome, and funny reactions to thank community volunteers for their valuable posts.
@Dobby, welcome to the community and thank you for using the app! @hgtonight's code should work well. Thanks for helping out, @hgtonight!
Add Pages to Vanilla with the Basic Pages app
Just like to confirm that this code works perfectly, thanks a lot @hgtonight and thanks @shadowdare!
@hgtonight I'm not sure how to go about doing this. I want to remove the sidebar modules only on certain custom pages (created with basic pages app). I will need a conditional for this right?
If there isn't a plugin out for this already, could you please guide me with a step-by-step instruction list?
Thanks!
to every page you want to remove a module you would add the code in the head section of that page. Something like this
<?php $this->Head->unsetAsset('SideMenuModule');?>
You can also just use css to hide them ...
❌ ✊ ♥. ¸. ••. ¸♥¸. ••. ¸♥ ✊ ❌
@vrijvlinder thanks! Where can I find the actual custom page that I created with basic pages app so I can edit it?
Where did you edit it to create it ?
I would suggest you try using css to hide what you don't want
look at the source code using a web inspector to see the name of the body
it should look like this
<body id="vanilla_discussion_index" class="Vanilla Discussion Index ">
find the name of your page body then add this to your custom.css theme file
Obviously use the name of the page you want to affect, the above is for the discussion. So find the one you want and then create some css to hide it.
❌ ✊ ♥. ¸. ••. ¸♥¸. ••. ¸♥ ✊ ❌
I got:
<body id="basicpages_page_index" class="BasicPages Page Index Page-testing sticky-footer-body">
didn't work...
I also tried triggering #page-sidebar (instead of #Panel), still not working. I'm not sure what I'm doing wrong here.
Did you try this ? every page has an index. you need to likely add the whole thing and use :
❌ ✊ ♥. ¸. ••. ¸♥¸. ••. ¸♥ ✊ ❌
Yes, I did (basically trigger the entire class name). Not working, unfortunately.
If you link me then I might have a better idea...all I can say is make sure you clear the cache. But I am just guessing in the dark without a way of seeing it myself..
❌ ✊ ♥. ¸. ••. ¸♥¸. ••. ¸♥ ✊ ❌
Where do I find the testing.php file to edit? I searched but couldn't find it. I was thinking maybe I can try this method instead of css.
I've done it, thanks a lot for your support @vrijvlinder !
Here is the code:
You are very Welcome!
❌ ✊ ♥. ¸. ••. ¸♥¸. ••. ¸♥ ✊ ❌
@r0obert, here's an example on removing modules via code for certain pages only:
Add Pages to Vanilla with the Basic Pages app
@Shadowdare thanks, that's awesome! All I have to do is just put that code inside a plugin right?
Also, what's the better practice, this one or via css?
@r0obert, that's right. The code can be placed in a plugin, application, or theme hooks file. Vanilla is very extensible in this way.
Both the code way and the CSS way are standard ways to hide modules. It depends on what you would like to achieve. The code way removes a module from rendering on the page entirely, so if you don't want the module to load up on the page in the HTML code, this is the way to go. The CSS way is usually for stylistic purposes.
Add Pages to Vanilla with the Basic Pages app
as an aside be aware:
generally if something is private and you don't want someone to see something on the page, it is better to not display it in the first place via backend code (php, etc).,
via css (display:none, etc) , just hides on the display page (on the users browser). But in firefox or in the page source people will still be able to see it if they look. and the info is still transferred from you host site to the users browser, so if you are hiding portions of a page via css, you are still sending it so it speak.
I may not provide the completed solution you might desire, but I do try to provide honest suggestions to help you solve your issue.
The memodule is hidden via css from the profile controllers...in the main style. So are a good many other things, which I found precisely by looking at the source code.
If you don't want that possibility , then the best way is to not render it at all on those pages. I guess it depends on how important it is to hide it.
❌ ✊ ♥. ¸. ••. ¸♥¸. ••. ¸♥ ✊ ❌