0 Пользователей и 1 Гость просматривают эту тему.
  • 12 Ответов
  • 4756 Просмотров
*

Invisibleon

  • Осваиваюсь на форуме
  • 27
  • 1 / 0


Заранее прошу простить, если всё-таки схожая ситуация была где-то на форуме, искал около 35 минут - не нашел, собственные силы кончились.

Итак - прилагаю скриншот (карта боевых действий) и описываю ситуацию:

Имеется JComments и модуль mod_related_items. mod_related_items находит схожие статьи по мета-ключевым-словам.
Требуется mod_related_items поднять выше JComments (как показано на рисунке). На данный момент  mod_related_items располагается в позиции "contentbottom" (то есть, под текстом материала). Насколько я понял - JComments "вписывается" иным способом и, так как является компонентом с плагинами, позиции модуля не имеет, выводится "другими средствами".

В данном сообщении ( http://joomlaforum.ru/index.php/topic,108575.msg629425.html#msg629425 ) предлагал сделать изменения в JComments и принудительно модуль "Похожие статьи" затолкать выше, но у меня это не вышло. Я пробовал вставлять следующий код (заменил в предложенном от smart варианте переменные):

Код
		$position	= 'contentbottom';
$document = &JFactory::getDocument();
$renderer = $document->loadRenderer('mod_related_items');
$params = array('style'=> -2);
 
$contents = '';
foreach (JModuleHelper::getModules($position) as $mod)  {
$contents .= $renderer->render($mod, $params);
}
echo $contents;

Наверно, что-то неправильно заменил. Подскажите следующее:
1) Как исправить вариант от smart'a ?
2) Есть ли другие способы передвинуть модуль выше, чем JComments, более быстрыми и легкими способами? Modules anywhere, насколько я понял, позволяет добавлять модули в статьи, в то время как мне нужно это автоматизировать, чтобы "юзерям" не приходилось каждый раз добавлять код в конец материала.

Заранее спасибо
P.S.: выделил для поиска жирным ключевые слова

*

SDKiller

  • Живу я здесь
  • 2706
  • 329 / 5
  • ...ergo sum
По идее просто loadRenderer('module'), не надо туда название своего модуля подставлять
*

Invisibleon

  • Осваиваюсь на форуме
  • 27
  • 1 / 0
SDKiller - спасибо.

Ошибка моя была в том, что прав на редактирование файла не было (апачем были файлы созданы, не сразу понял, что изменения не сохраняются)
Исправил...

В результате имею проблему следующего характера:


Снизу видно, что модуль mod_related_items имеет определенные CSS характеристики, однако над JComments они теряют свою силу.
Как перенести модуль "1 в 1" над JComments ?

Спасибо
*

SDKiller

  • Живу я здесь
  • 2706
  • 329 / 5
  • ...ergo sum
Ну я не знаю, как у Вас так красиво там сделано.

Можно попробовать сделать так

echo '<div class="someclass">'.$contents.'</div>';

И этому div-у назначить в файле CSS стиль, похожий на тот, что был назначен модулю (1 в 1 вряд ли получится, но постараться можно).
*

Invisibleon

  • Осваиваюсь на форуме
  • 27
  • 1 / 0
SDKiller проблема в том (на прошлом скрине видно), что не выводится название модуля (Читайте также).
И чего-то я не понимаю, почему стили не подхватываются из моего Joomla-шаблона, а их требуется прописывать в ксс-файлы JComments
*

SDKiller

  • Живу я здесь
  • 2706
  • 329 / 5
  • ...ergo sum
В чём проблема-то? Тем более если модуль будет один и тот же, можно для простоты сделать так например:

echo '<div class="someclass"><h3>Читайте также</h3><br/>'.$contents.'</div>';

Стили не подхватываются, потому что вы внедряете эту беду уже в div JComments
(навскидку не помню как называется, нет под рукой). А там, к тому же, !important почти везде проставлено.


ЗЫ: я не знаю, как у Вас в шаблоне, h3 - для примера
*

smart

  • Администратор
  • 6478
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
А там, к тому же, !important почти везде проставлено.
угу, специально проставлено, чтобы внутри комментариев работали стили комментариев и стиль шаблона не мешал.
*

Invisibleon

  • Осваиваюсь на форуме
  • 27
  • 1 / 0
А вообще нету вариантов как-нибудь "вынести" JComments в отдельный модуль ?
Или же как-нибудь прописывать всё-таки модули/дополнительное инфо (которое нужно, чтобы было НАД JComments) в отдельную позицию до JComments, после статьи?

Всё-таки прописывать инфо в код JComments как-то не продуктивно... Если понадобятся изменения - придётся лезть в код JComments, удобнее всё же было бы из административной панели вносить изменения
*

smart

  • Администратор
  • 6478
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
А что вам мешает опубликовать ваш модуль выше комментариев, с помощью плагина "Content - Load Modules"? Модуль публикуется в произвольной позиции, а потом в статье, посредством вставки тега {loadposition позиция} загружается модуль.

А можно вообще, переопределить шаблон вывода статьи, и вставить загрузку модуля перед строкой:
Код: php
<?php echo $this->article->event->afterDisplayContent; ?>
*

Invisibleon

  • Осваиваюсь на форуме
  • 27
  • 1 / 0
smart content load modules постараюсь опробовать;
а вот насчет вывода модуля в шаблоне - в каком файле добавлять вывод модуля и какой приблизительно код нужно использовать?

заранее спасибо
*

smart

  • Администратор
  • 6478
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
Код, который вы приводили в первом сообщении. В какой файл? Ну я же написал, переопределить шаблон вывода материала. Файл /templates/вашшаблон/html/com_content/article/default.php. После какой строчки - я тоже написал. Поищите по форуму, информации по переопределению отображения компонентов полно.
*

Yana

  • Захожу иногда
  • 66
  • 17 / 0
  • Пенсионерка русской поддержки Joomla
Сереж, а для Joomla 3 можно код?
Ругается на строку
Код
$document	= &JFactory::getDocument();
Говорит
Код
Strict Standards: Only variables should be assigned by reference
« Последнее редактирование: 24.01.2015, 00:01:18 от Yana »
*

Yana

  • Захожу иногда
  • 66
  • 17 / 0
  • Пенсионерка русской поддержки Joomla
Заработало после удаления амперсанда &, но без заголовка модуля.
Подозревала, что проблема в строке
Код
$params		= array('style'=> -2);
. Но манипуляции с двойкой ни к чему не привели.

Ответ нашелся. Надо заменить строку на
Код
$params		= array('style'=> 'xhtml');
« Последнее редактирование: 24.01.2015, 00:21:11 от Yana »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вышла новая версия JComments Fork 4.0.16

Автор ProtectYourSite

Ответов: 79
Просмотров: 9653
Последний ответ 05.02.2024, 23:50:16
от ProtectYourSite
У Jcomments есть аналоги?

Автор ruslan13

Ответов: 10
Просмотров: 2191
Последний ответ 07.12.2023, 20:08:31
от Missile
JComments 3.0.7 в Joomla 3.10.12

Автор rezchik

Ответов: 2
Просмотров: 729
Последний ответ 05.10.2023, 21:44:08
от rezchik
JComments 3.0.7 в Joomla 3.10.12

Автор rezchik

Ответов: 1
Просмотров: 615
Последний ответ 02.10.2023, 22:24:45
от sivers
Модуль JComments Latest

Автор smart

Ответов: 574
Просмотров: 332817
Последний ответ 05.07.2023, 16:42:32
от sertlan