Как показать модуль в Joomla, когда это не пункт меню - PullRequest
1 голос
/ 10 мая 2010

Я пытаюсь показать модуль, но статья, на которой я хочу показать модуль, не связана с пунктом меню. Это возможно? Похоже, модуль может показывать только тогда, когда это пункт меню. Но у меня есть тонна статей, которые не являются пунктами меню - так какой самый простой способ показать модуль? Любая помощь будет принята с благодарностью.

Ответы [ 6 ]

3 голосов
/ 13 мая 2010

Способ сделать это следующим образом.

Предположим, у вас есть группа статей, на которых вы хотите, чтобы все модули отображались одинаково.

  1. Создайте новую категорию с помощью опции «менеджер категорий» из меню содержимого

  2. Убедитесь, что все статьи опубликованы в этой же категории.

  3. Создать новое меню, которое вы фактически нигде не будете отображать (мне нравится публиковать меню в позиции модуля, которой нет в шаблоне)

  4. Добавить опцию макета блога категории в это новое меню

  5. Теперь просмотрите все модули, которые вы хотите отобразить для группы, и добавьте их в новый элемент меню, который вы создали.

Надеюсь, это поможет!

2 голосов
/ 16 декабря 2012

Это будет мой первый ответ после того, как я получу много помощи через stackoverflow, не будучи участником. Я просто добавлю кое-что к ответу Буззки. Потому что я почти сходил с ума, пока не понял, как решить.

Если вы использовали статью в модуле с расширением, например mod_articleasmodule; это добавляет псевдонимы статей на URL Подробнее. Просто измените строку;

$link = "index.php?option=com_content&view=article&id=".$item->id.":".$item->alias."&catid=".$item->catid.":".$item->catalias;

до

$link = "index.php?option=com_content&view=article&id=".$item->id."&catid=".$item->catid;

, чтобы получить чистую ссылку URL, и ваше меню, назначенное MetaMod, будет работать. Также большое спасибо buzzki за помощь.

1 голос
/ 22 ноября 2012

Хотя метод {loadposition xxx} очень удобен, он не будет помещать модуль в любое из «стандартных» положений модуля (например, влево, вправо, баннер или что-то еще в вашем шаблоне).

Если вы хотите, чтобы ваш модуль находился в одной из этих позиций, отличный способ - использовать MetaMod . MetaMod - это модуль-заполнитель, который включает в себя другие модули внутри себя в соответствии с установленными вами правилами.

Таким образом, вы можете настроить его с помощью правила, которое, по сути, гласит: «Если мы находимся на статье A, B, C, D или E, покажите модуль».

if ($content_genius->check("article_id = 50, 51, 52, 53, 54")) return XXX;
// replace XXX with the module id to show on those articles

Теперь, если количество статей будет регулярно меняться, вам не нужно редактировать MetaMod, чтобы изменить список идентификаторов. Таким образом, другой способ - использовать поле Meta Keywords в статьях, чтобы определить, появится ли модуль. Затем все, что вам нужно сделать, это включить это ключевое слово в любую статью, в которой вы хотите, чтобы модуль появился. Допустим, ключевое слово будет «SHOWMOD».

Так что в MetaMod вы можете просто использовать это:

if ($content_genius->check("article_metakeywords contains SHOWMOD")) return XXX;
// replace XXX with the module id to show on those articles

Таким образом, модуль будет появляться на каждой странице статьи, где статья содержит это ключевое слово meta. И позиция модуля может быть любой позицией на странице (где бы ни был назначен MetaMod).

0 голосов
/ 24 августа 2012

Выполните следующие действия в панели администратора вашего сайта Joomla:

  1. Зайдите в менеджер модулей, откройте нужный модуль и дайте уникальное имя в поле позиции. Если вы хотите использовать его также в другой общей позиции, такой как левая или правая, сначала создайте копию этого модуля, а затем для новой копии создайте уникальное имя позиции. Пример: custom1.

  2. Создать новую статью, желательно без категории. Дайте ему название вашего модуля.

  3. В области текста статьи введите {loadposition custom1} и сохраните статью.

  4. Создать ссылку меню на эту статью в нужном меню. Вы должны выбрать «Макет статьи».

Вот и все, теперь ваш модуль будет загружаться непосредственно из ссылки меню.

Это дает дополнительное преимущество, заключающееся в том, что вы получаете выдающееся SEO-представление на основе метаданных, предоставленных вами для этой статьи.

0 голосов
/ 30 января 2012

Вы просто называете позицию своего модуля как хотите, говорите «обезьяна», где ваш модуль предлагает «выбрать позицию». Вы фактически вводите это. Затем в статье, в которую вы хотите поместить это, вы добавляете

{loadposition monkey} 

в любом месте вашей статьи вы хотите, чтобы мод работал в редакторе html.

0 голосов
/ 12 мая 2010

Шаг 1. В интерфейсе своего веб-сайта щелкните нужную статью, выделите и скопируйте URL-адрес.

Шаг 2. Создайте элемент меню, тип элемента - URL-адрес и вставьте туда URL своей статьи. (Вы можете иметь пункт меню в неопубликованном меню, я думаю)

Шаг 3: выберите его из списка пунктов меню в модуле.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...