Similar: Вывод похожих публикаций под топиком
1.В /templates/skin/default/block.similarTopics.tpl заменит код на
{if $aSimilarTopics|@count}
<div class="block stream" style="padding-left:40px;padding-bottom:15px;">
<span style="font-weight:bold;color:#66b746;">
{$aLang.block_similar_articles_title}</span>
<div class="block-content">
<ul class="stream-content">
{foreach from=$aSimilarTopics item=oTopic name="cmt"}
{assign var="oBlog" value=$oTopic->getBlog()}
{assign var="oUser" value=$oTopic->getUser()}
<li {if $smarty.foreach.cmt.iteration % 2 == 1}class="even"{/if}>
<a href="{$oUser->getUserWebPath()}" class="stream-author">{$oUser->getLogin()}</a> →
<a href="{$oTopic->getUrl()}" class="stream-topic">{$oTopic->getTitle()|escape:'html'}</a>
<span> ({$oTopic->getCountComment()})</span> РІ <a href="{$oBlog->getUrlFull()}" class="stream-blog">{$oBlog->getTitle()|escape:'html'}</a>
</li>
{/foreach}
</ul>
</div>
</div>
{/if}
2.Меняем на этот код все в файле HookSimilar.class.php
<?php
/**
* Хук для плагина Similar
*/
class PluginSimilar_HookSimilar extends Hook {
/**
* Регистрируем хук на topic_show
*
* @return void
*/
public function RegisterHook() {
$this->AddHook("topic_show", "topicShowed", __CLASS__);
}
/**
* Получаем список похожих топиков, передаем их в Viewer и добавляем нужный блок в сайдбар
*
* @param array $aVars
*/
function topicShowed($aVars) {
if(isset($aVars['oTopic'])) {
$this->Viewer_AddBlock(
'left',
'similarTopics',
array('plugin' => 'similar', 'oTopic' => $aVars['oTopic']),
Config::Get('plugin.similar.topics_block_priority')
);
}
}
}
3.В topic.tpl после
{hook run='topic_show_end' topic=$oTopic}
</div>
добавить
<div>
{if isset($aBlocks.left)}
{foreach from=$aBlocks.left item=oBlock}
{if $oBlock.type == 'block'}
{insert name="block" block=`$oBlock.name` params=`$oBlock.params`}
{/if}
{if $oBlock.type == 'template'}
{include file=`$oBlock.name` params=`$oBlock.params`}
{/if}
{/foreach}
{/if}
</div>
31 комментарий
Я сделал, но похожие остались в сайдбаре справа, правда с другим стилем уже.
В чем может быть проблема?
А можно чтобы описание блога было над постом (в полном посте)?
Если да, то сколько это будет стоить?
в topic.tpl куда захотите
ps постучитесь в личку, дам кошелек для оплаты трудов :D
И в полном посте надо убрать из сайдбара облако. Чтобы дубля не было.
Если решите — высылайте кошелек в личку.
удалите
облако пропадет из сайдбара
а есчли в самый низ нужно, то
вставте в footer.tpl куда понравится, к примеру после
добавил следующий код в конфиг модуля блоков
Выводится ошибка, но часть сайта грузится (до места, где должны топики выводиться):
Если что-то другое писать в конфиге — вообще сайт не грузит и один большой Фатал еррор.
не могу найти и все, первые два действия выполнил.
Работает правда потупил немного прежде чем заработало.
Для тех кто плохо знает LS (т.е. таких как я) ) Очень подробно:
П.1
определяем стиль отображения блока
В /plugins/similar/templates/skin/ваш_шаблон/block.similarTopics.tpl (если такого файла нет, то создайте его) заменить код на:
П.2
Прописываем Hook
Заменить содержимое /plugins/similar/classes/hooks/HookSimilar.class.php на:
П.3
Определяем местоположение блока в шаблоне
В /templates/skin/ваш-шаблон/topic.tpl в нужное место, а в шаблоне default после:
Заменить на:
Код отличается от кода автора, отсутствием некоторых кавычек (с ними у меня не работало отображение похожих записей)
Выполнил шаг 1 и шаг 2
В папке шаблона у нас нет topic.tpl, а есть topic_типтопика.tpl и у них в конце такая вот штука
Ставлю после этого из п.3. получается.
В итоге ничего не получается :(. Подскажите, как правильно настроить вывод похожих записей после текста топика?
github.com/stfalcon-studio/ls-plugin_similar/pull/14