Форуми / National / Russian / Модули и плагины / [Release] Rcnt Comments Plugin 0.0.3 beta (Siena)

Recent Comments support for Siena

JIabs
#1 03.09.2011 14:32

Здравствуй сообщество Cotonti.

Предисловие

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

  • Пускай я дилетант в PHP и внутреннем устройстве движка, но возможно многие такие же новички увидят насколько просто писать новые плагины под котонти.
  • Пускай код в основном кусками рваный из разных источников, но вставлен далеко не бездумно, на то он и open source, можно посмотреть разобраться как что работает.
  • Пускай код крив и несовершенен, но кому-то может быть и сгодится, как пригодились мне разные открытые плагины. Был бы благодарен за корректировки и советы касательно кода.

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

Шаблон заточен именно под собственную тему, под дефолтной не проверял, если будут желающие сделать пригодным из коробки для дефолтной темы, поправьте.

При написании курил исходники модулей rss, recentitems, comments, pages и мануал по написанию плагинов.


О плагине


RcntComments 0.0.3 beta (http://www.cotonti.com/datas/users/rcntcomments003_1120.zip)
Движок: Siena
Тестировалось на: Siena 0.9.7
Язык: eng, rus

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

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

Большое спасибо команде разработчиков Cotonti

 

 

History:

 

RcntComments 0.0.1 beta

первый публичный релиз

 

RcntComments 0.0.2 beta

[+] Добавлена возможность вызывать плагин в разных частях (footer, header etc)

[*] Исправлен баг, если комментариев много(несколько страниц), то раньше не работал правильно линк с учетом страницы комментария.

 

RcntComments 0.0.3 beta

[+] Добавлена возможность выбора конкретного tpl или всех сразу, где будет работать плагин


Відредаговано: JIabs (04.03.2012 12:05, 12 років тому)
Moool13
#2 03.01.2012 17:31

В header не отображается.

Добавлено 1 месяц спустя:

Кто готов доделать, чтобы комменты отображались в header части? Цена?


Відредаговано: Moool13 (02.03.2012 17:23, 12 років тому)
staleo
#3 02.03.2012 21:57

...и еще в пейдже и листе, как в старом плаге на Genoa.

Dayver
#4 02.03.2012 23:04

Кому нужно предлагаю такое решение данной задачи

  1. Открываем файл rcntcomments.index.php и редактируем строчки
    Hooks=index.tags
    Tags=index.tpl:{RCNT_COMMENTS}
    до такого вида
    Hooks=header.tags,index.tags,page.tags,page.list.tags,footer.tags
    Tags=header.tpl:{RCNT_COMMENTS};index.tpl:{RCNT_COMMENTS};page.tpl:{RCNT_COMMENTS};page.list.tpl:{RCNT_COMMENTS};footer.tpl:{RCNT_COMMENTS}
  2. Далее в админке, если плагин уже установлен то жмем кнопку обновить, если нет то просто устанавливаем стандартным способом плуг
  3. Все по идее должно заработать .... благодарность в любом размере готов принять на кошельки Z274683398211 R211919067443 U346049924920 или в иной другой валюте wink
Pavlo Tkachenko aka Dayver

Відредаговано: Dayver (03.03.2012 12:32, 12 років тому)
Moool13
#5 03.03.2012 06:26

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

esclkm
#6 03.03.2012 08:11

а обновить нажимал после этого?

littledev.ru - мой маленький зарождающийся блог о котонти.
снижение стоимости программирования и снижение стоимости производства разные вещи. Первое можно скорее сравнить с раздачей работникам дешевых инструментов, чем со снижением зарплаты
Moool13
#7 03.03.2012 08:17

esclkm конечно.

Dayver
#8 03.03.2012 10:45

А в настройках плагина индекс меняли на хедер?

Pavlo Tkachenko aka Dayver
Moool13
#9 03.03.2012 10:57

Dayver да, а тебя работает?

Dayver
#10 03.03.2012 10:57

Кстати для того что б работало не только в хедере и индексе кроме поправок вышеуказаных нужно поправить в файле rcntcomments.setup.php строки

[BEGIN_COT_EXT_CONFIG]
part=10:select:index,header:index:Part where recent comments should be called
....
[END_COT_EXT_CONFIG]

до

[BEGIN_COT_EXT_CONFIG]
part=10:select:index,header,page.list,page.main,footer:index:Part where recent comments should be called
 ....
 [END_COT_EXT_CONFIG]

Добавлено 1 час спустя:

Да, указаный, в двух постах выше, код для исправления плагина скачаного в первом посте этой темы, на чистой сиене 097(проверял ... но думаю и на рабочих сайтах будет работать) делает возможным показ блока последних комментариев на выбор в одном (но только одном) из таких шаблонов header.tpl;index.tpl;page.tpl;page.list.tpl;footer.tpl (тоесть одновременно например в index.tpl page.tpl работать не будет).

 

Для того что бы выводило одновременно во все шаблоны достаточно превратить основной код файла rcntcomments.index.php в такой:

//if (cot_get_caller() == $cfg['plugin']['rcntcomments']['part'])
//{
	require_once cot_incfile('rcntcomments', 'plug');
	if (cot_module_active('page') && cot_plugin_active('comments'))
	{
		$res = cot_build_rcntcomments('rcntcomments', 'recent', $cfg['plugin']['rcntcomments']['maxcomments'], 0, $cfg['plugin']['rcntcomments']['maxcommenttext'], $cfg['plugin']['rcntcomments']['maxparenttitletext'], 0);
		$t->assign('RCNT_COMMENTS', $res);
	}
//}

тоесть по сути заккоментировать проверку if (cot_get_caller() == $cfg['plugin']['rcntcomments']['part'])

Добавлено 4 минуты спустя:

Вот архив плагина со всеми исправлениями описаными выше

Pavlo Tkachenko aka Dayver

Відредаговано: Dayver (03.03.2012 12:44, 12 років тому)
JIabs
#11 03.03.2012 16:35

Dayver, с твоего позволения добавил твои исправления в архив актуальной версии 0.0.2

[+] Добавлены изменения от Dayver'а

[*] Исправлен баг, если комментариев много(несколько страниц), то раньше не работал правильно линк с учетом страницы комментария.

 

Скачать последнюю версию(RcntComments 0.0.2 beta) можно отсюда: http://www.cotonti.com/datas/users/rcntcomments002_1120.zip

 

Обновил линк в шапке.

Dayver
#12 03.03.2012 18:21

ага ... но я бы порекомендовал для большей универсальности не комментировать проверку if (cot_get_caller() == $cfg['plugin']['rcntcomments']['part']), а добавить возможность выбора режима работы в настройки плагина, а именно в сетап файл вот такое

[BEGIN_COT_EXT_CONFIG]
mode=01:radio::1:Output in al template?
part=10:select:index,header,page.list,page.main,footer:index:Part where recent comments should be called
maxcomments=12:string::5:Number of recent comments displayed
maxcommenttext=13:string::100:Recent comment text length limit
maxparenttitletext=14:string::25:Parent page title text length limit
[END_COT_EXT_CONFIG]

и заменить проверку на такую

if (cot_get_caller() == $cfg['plugin']['rcntcomments']['part'] || $cfg['plugin']['rcntcomments']['mode'])

ну и тогда в русском ленге 

$L['cfg_mode'] = array('Тег работает во всех частях?', 'Если нет то ниже выберете нужную часть'); 
$L['cfg_part'] = array('Часть, в которой будет вызываться плагин', 'Если указана работа не во всех частях');
Pavlo Tkachenko aka Dayver
JIabs
#13 04.03.2012 12:00

Dayver, внес все предложенные тобой улучшения, спасибо большое!

обновил линк в шапке

 

RcntComments 0.0.3 beta

[+] Добавлена возможность выбора tpl, где будет работать плагин

Скачать