2

I have multiple modules set to display on all pages except those selected. Most of the views in my component have a regular menu item assigned and as such I can add them to the 'BUT the selected list'.

Now I also have a view without a menu item. Since this view is called with different parameters, I can not use the hidden menu option since the GetMenu()->GetItems('link' ...) function will NOT find the menu item if it end with ..&cid=12 once, &cid=13 the next time.

I would have to create 30 or 50 hidden menu items, for each parameter .. then exclude each from the module. I would rather not do that.

Is there another way to avoid loading a module in my component view?

EDIT: I am aware I can use some code to switch to a template without the module positions in question, but since that's more of a hack I would rather not fall back to using the template switch.

2

I'm pretty sure you can use Advanced Module Manager for this purpose. There are many different rules you can apply to your modules in order to control when and where your modules should be displayed or hidden.

In your case (if I understand your question correctly), you can hide your modules for certain components:

Hide module for component

Just select "Exclude", locate your component(s) from the list and save your module.

Hope that helps.

  • This is a very good component, not just for my problem here, but in general. I was so caught up in solving this in my own code, I never thought of looking for another component. Thank you very much Johanpw. I didn't go with the component option, but used the URL option to just exclude that one view. NICE – Andreas Jun 16 '15 at 1:35
  • No problem, I'm glad it worked. And yes, it's a very handy extension that can solve lot's of problems with a few clicks. – johanpw Jun 16 '15 at 2:45
  • Curiously, there seems to be small issue. The empty sidebar is shown. Usually, Joomla does not display a module position if no module is inside. Have you experience this ? – Andreas Jun 16 '15 at 5:26
  • This usually depends on your template. See if the template has an if/else statement similar to this when displaying modules: <?php if ($this->countModules('YourPosition')) : ?><jdoc:include type="modules" name="YourPosition" style="xhtml" /><?php endif; ?> Also check if other modules are published to the sidebar. – johanpw Jun 16 '15 at 6:47
  • NVM, There was one more module assigned to the sidebar which yielded NO content, my mistake – Andreas Jun 16 '15 at 17:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.