<?xml version='1.0' encoding='UTF-8'?>
<rss version='2.0'>
	<channel>
		<title>cotonti.com : Система Hooks. Принцип работы.</title>
		<link>https://www.cotonti.com</link>
		<description>Последние сообщения в теме</description>
		<generator>Cotonti</generator>
		<language>en</language>
		<pubDate>Wed, 15 Apr 2026 15:41:36 -0000</pubDate>

		<item>
			<title>booka</title>
			<description><![CDATA[какая разница между хуками  header.main и header.tags? header.main только в &lt;head&gt; &lt;/head&gt; отрабатывает, а header.tags куда угодно в header.tpl, но только после &lt;body&gt; ???]]></description>
			<pubDate>чт, 25 мар 2010 05:37:41 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/ru/forums?m=posts&q=5220&d=0#post23762]]></link>
		</item>
		<item>
			<title>Gunslinger</title>
			<description><![CDATA[<strong>Dayver</strong><br />
Да внимательно я читаю <img class="aux smiley" src="https://www.cotonti.com/./images/smilies/smile.gif" alt=":)" /> Смотри  <a href="http://www.cotonti.com/forums.php?m=posts&amp;id=22463">сюда</a> Меня интересуют такие ответы, а не парафраз в общем контексте другого вопроса. Дополнительные пояснения в той же теме.]]></description>
			<pubDate>сб, 30 янв 2010 06:50:19 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/ru/forums?m=posts&q=5220&d=0#post22470]]></link>
		</item>
		<item>
			<title>Dayver</title>
			<description><![CDATA[<blockquote><a href="https://www.cotonti.com/forums.php?m=posts&amp;p=22459#22459">#</a> <strong>Gunslinger :</strong>
<strong>esclkm</strong><br />
3. Если можно, то немного подробнее о порядке выполнения кода из разных плагинов по одному хуку. Как именно задается очередность выполнения плагинов и каковы ограничения относительно таких очередностей?<br />
</blockquote>
Ох что то мне подсказывает вы не внимательно читаете ответы форумчан<br />
<blockquote><a href="https://www.cotonti.com/forums.php?m=posts&amp;p=22449#22449">#</a> <strong>Sergey :</strong>
.....Однако, плагинов к одной части может быть подключено много, для этого массив $extp, предварительно, сортируется по порядку Order и имени для одинаковых порядков. Исполняются вначале самые меньшие значения. Далее, ответ на мое утверждение &quot;вам еще пока не &quot;по зубам&quot; работать с PHP&quot; следует вызов этого плагина. Фактически оператор  include_once (единожды) загружает файл с кодом PHP. Имя и где его искать берутся как раз берутся из условий в массиве $extp и установок всего ресурса в целом ($cfg['plugins_dir']). Условия загрузки формируются при установке плагина, обработкой специальной части плагина Setup... <br />
</blockquote>
<blockquote><a href="https://www.cotonti.com/forums.php?m=posts&amp;p=22459#22459">#</a> <strong>Gunslinger :</strong>
<strong>esclkm</strong><br />
4. Возможно так же покажется глупостью, но все же просьба прокоментировать. Возможно ли в некий узловой плагин вставить используя механизм хуков такие же точки расширения как в глобальных модулях? Для более гибкого подключения к одному плагину нескольких других, сходных по функционалу или области применения.<br />
</blockquote>
Ответ на этот вопрос в той ветке форума тоже можна прочесть ... времени нет искать точную цитату потому коротко повторю - Да любой плагин может содержать в себе хуки и все будет работать так же как и с хуками в модулях]]></description>
			<pubDate>сб, 30 янв 2010 03:52:49 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/ru/forums?m=posts&q=5220&d=0#post22460]]></link>
		</item>
		<item>
			<title>Gunslinger</title>
			<description><![CDATA[<strong>esclkm</strong>, ок. Момент подгрузки модулем файлов с хуком ясен. Спасибо.<br />
<br />
Теперь ряд следующих вопросов (по ним хотелось бы максимально подробное пояснение):<br />
<br />
1. Чем ограничивается область действия хука в тексте основного модуля? Или же сам хук является просто точкой входа и функционал из подгружаемых модулей так сказать &quot;вставляется&quot; в текст основного модуля между хуком и следующей строчкой основного кода?<br />
<br />
2. Возможно ли (может это и глупость, но все-таки) с использованием хуков передавать данные из запроса в основном модуле плагину? (многие плагины, например для форума, повторяют в своем тексте запрос к той же таблице что и основной модуль, разница только в наборе полей)<br />
<br />
3. Если можно, то немного подробнее о порядке выполнения кода из разных плагинов по одному хуку. Как именно задается очередность выполнения плагинов и каковы ограничения относительно таких очередностей?<br />
<br />
4. Возможно так же покажется глупостью, но все же просьба прокоментировать. Возможно ли в некий узловой плагин вставить используя механизм хуков такие же точки расширения как в глобальных модулях? Для более гибкого подключения к одному плагину нескольких других, сходных по функционалу или области применения.]]></description>
			<pubDate>сб, 30 янв 2010 03:27:35 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/ru/forums?m=posts&q=5220&d=0#post22459]]></link>
		</item>
		<item>
			<title>esclkm</title>
			<description><![CDATA[я, знаешь обычно коронтко и коряво. но попытаюсь пояснить<br />
ты раз смотрел хаки ядра то видел, что есть довольно подобные строки кода.<br />
<br />
<div class="highlight"><pre class="php">
/* === Hook === */
	$extp = sed_getextplugins('forums.posts.newpost.first');
	if (is_array($extp))
	{ foreach($extp as $k =&gt; $pl) { include_once($cfg&#091;'plugins_dir'&#093;.'/'.$pl&#091;'pl_code'&#093;.'/'.$pl&#091;'pl_file'&#093;.'.php'); } }
	/* ===== */
</pre></div>
это и есть место включения хука. первая строка читает все плагины - у которых в свойствах указан хук с данным именем в данном случае forums.posts.newpost.first<br />
последующие строки подключают все файлы с данным хуком.<br />
про описания в файле плагина верхних строк писалось тут <a href="http://www.seditio.by/page.php?al=cotonti_multihooks" rel="nofollow">http://www.seditio.by/page.php?al=cotonti_multihooks</a><br />
<br />
то есть в данном месте - пошагово проинклюдились все файлы. Сответственно чтобы грамотно сделать надо смотреть код файла к которому мы подключаем - тогда знаем чем мы можем варьировать в этой ситуации<br />
<br />
исключения среди хуков: standalone, tools, ajax<br />
<br />
что не понятно поямнил задавай вопросы.]]></description>
			<pubDate>сб, 30 янв 2010 00:36:56 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/ru/forums?m=posts&q=5220&d=0#post22452]]></link>
		</item>
		<item>
			<title>Gunslinger</title>
			<description><![CDATA[Прочитал соответствующие статьи по плагиностроению в разделе документации, но так до конца и не понял, как именно коректно использовать эту систему при написании плагина. Может ли кто-то четко, понятно для простого смертного и пошагово (желательно на примере) пояснить каким образом работает хук и как к нему грамотно &quot;пристроиться&quot; с плагином? Буду крайне признателен за помощь. И, думаю, что не я один.<br />
<br />
П.С.<br />
Просьба не отфутболивать в режим поиска. Юзал и неоднократно. Раз поднимаю тему снова, значит удобоваримого пояснения для себя не нашол.]]></description>
			<pubDate>пт, 29 янв 2010 21:59:16 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/ru/forums?m=posts&q=5220&d=0#post22446]]></link>
		</item>
	</channel>
</rss>