<?xml version='1.0' encoding='UTF-8'?>
<rss version='2.0'>
	<channel>
		<title>cotonti.com : Wiki плагин.</title>
		<link>https://www.cotonti.com</link>
		<description>Neueste Themenbeiträge</description>
		<generator>Cotonti</generator>
		<language>en</language>
		<pubDate>Fri, 17 Apr 2026 22:56:45 -0000</pubDate>

		<item>
			<title>Macik</title>
			<description><![CDATA[<blockquote><a href="https://www.cotonti.com/forums?m=posts&amp;q=7579#38425">#38425</a> <strong>Trustmaster: </strong>
<p>А вот создавать клон MediaWiki - имхо, лишнее. Если дело в шаблонах, то у нас тут есть 3 вещи: клонирование страниц (например, можно клонировать страницу-шаблон), шаблоны страниц в категориях (page.docs.tpl), встраиваимые шаблоны CoTemplate (хранимые в БД). Я бы лучше обошёлся без последнего, но в крайнем случае можно задействовать и их.</p>
</blockquote>

<p>На счет клона MediaWiki согласен полностью, лишнее.</p>

<p>А вот хранимые в БД и редактируемые как обычные страницы шаблоны, это на мой взгляд, может и не прорывная, но по крайней мере, мощная для развития штука.<br />
Причем я не веду речь о переводе всей системы шаблонов на такую схему, нет. Но использование ее хотя бы в рамках Вики — это было бы очень полезно и удобно. Тем более, что обезопасить использование таких шаблонов не сильно затратно.</p>

<p> </p>
<p><strong>Добавлено 2 минуты спустя:</strong></p><p>Опять же, начать можно и нужно с малого (markdown+history), а расширить эту связку inline-шаблонами можно отдельным плагином. Просто при разработке связки надо держдать в голове эту возможность.</p>
]]></description>
			<pubDate>Mo, 11 Nov 2013 10:31:14 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/de/forums?m=posts&q=7579&d=0#post38436]]></link>
		</item>
		<item>
			<title>Trustmaster</title>
			<description><![CDATA[<p>А вот создавать клон MediaWiki - имхо, лишнее. Если дело в шаблонах, то у нас тут есть 3 вещи: клонирование страниц (например, можно клонировать страницу-шаблон), шаблоны страниц в категориях (page.docs.tpl), встраиваимые шаблоны CoTemplate (хранимые в БД). Я бы лучше обошёлся без последнего, но в крайнем случае можно задействовать и их.</p>
]]></description>
			<pubDate>Mo, 11 Nov 2013 06:17:47 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/de/forums?m=posts&q=7579&d=0#post38425]]></link>
		</item>
		<item>
			<title>Macik</title>
			<description><![CDATA[<blockquote><a href="https://www.cotonti.com/forums?m=posts&amp;q=7579#38393">#38393</a> <strong>Trustmaster: </strong>
<p>Не понял, зачем Wiki нужен свой шаблонизатор. По-моему, хватит обычных TPL, а внутри - однозначно разметка на Markdown. Парсер и редактор Markdown у нас уже есть.</p>
</blockquote>

<p>Тут смотря что именно мы понимаем под Wiki. </p>

<ol><li>Если все, что нужно это система версионирования документа и поддержка простой разметки, то да - TPL + markdown будет достаточно.</li>
	<li>Если говорить о «нормальной Wiki-совместимой» системе, то это использование встраиваемых шаблонов, неограниченная вложенность шаблонов, вызов шаблонов с параметрами, встроенная разметка для таблиц, TOC (и прочее), т.е. некое подобие MediaWiki - то тут обычными TPL думаю не обойдется.</li>
</ol><p><span style="line-height:1.6em;">Первый вариант относительно прост в реализации. Это да. И это тот вариант с которого надо начинать в любом случае. Но… это не Wiki. </span></p>

<p><span style="line-height:1.6em;">П</span><span style="line-height:1.6em;">о крайней мере я не вижу здесь </span><span style="line-height:1.6em;">главной особенности - возможности использовать другую страницу, как шаблон для вставки в текущий документ.<br />
И имено это, как мне кажется, и является главной фишкой </span>вики-систем.</p>

<p><span style="line-height:1.6em;">(Условный пример д</span><span style="line-height:1.6em;">ля понимания о чем я: создаем одну страницу «Шапка страницы документац</span><span style="line-height:1.6em;">ии», а потом на каждой последующей странице документации прямо в тексте пишем {{</span><span style="line-height:1.6em;">Шапка страницы документации</span><span style="line-height:1.6em;">}}. Все! Теперь на каждой странице имеем единую шапку без необходимости повторять текст.) </span></p>

<p><span style="line-height:1.6em;">[Поразмыслил еще немного…] </span><br /><span style="line-height:1.6em;">Хотя можно просто </span><span style="line-height:1.6em;">реализовать и на основе CoTemplate,</span><span style="line-height:1.6em;"> ч</span><span style="line-height:1.6em;">уть его расширив примитивным функционалом черных/белых списков для вызова функций. (Тем более, что о подобном рас</span><span style="line-height:1.6em;">ширении речь уже заходила.)</span></p>

<p> </p>
]]></description>
			<pubDate>So, 10 Nov 2013 22:31:44 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/de/forums?m=posts&q=7579&d=0#post38422]]></link>
		</item>
		<item>
			<title>Trustmaster</title>
			<description><![CDATA[Не забывайте что вики нужна не только на этом сайте но и движку вообще.]]></description>
			<pubDate>Sa, 09 Nov 2013 13:42:36 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/de/forums?m=posts&q=7579&d=0#post38402]]></link>
		</item>
		<item>
			<title>Yusupov</title>
			<description><![CDATA[<blockquote>
<p>Есть ли смысл делать сайты на Cotonti, когда можно вылкадывать страницы статике на github.io? :)</p>
</blockquote>

<p>Нет, делать сайты надо только на Cotonti)</p>
]]></description>
			<pubDate>Sa, 09 Nov 2013 13:25:16 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/de/forums?m=posts&q=7579&d=0#post38401]]></link>
		</item>
		<item>
			<title>Wadik</title>
			<description><![CDATA[<p>А вариант интеграции с Wiki гитхаба и сайта абсурден?! Если к примеру сделать репозитарий по документации и взаимодействовать по api(кешировать информацию, одновлять кеш и пр...)?</p>
]]></description>
			<pubDate>Sa, 09 Nov 2013 11:44:47 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/de/forums?m=posts&q=7579&d=0#post38398]]></link>
		</item>
		<item>
			<title>Trustmaster</title>
			<description><![CDATA[<blockquote><a href="https://www.cotonti.com/ru/forums?m=posts&amp;q=7579#38396">#38396</a> <strong>Yusupov: </strong>
<p>Господа, есть ли смысл создавать такой плагин, если все это можно делать в githib, там же есть вики-раздел для репозитория?</p>

<p>Или это необходимо из-за того, что нужна мультиязычность базы знаний?</p>
</blockquote>

<p>Есть ли смысл делать сайты на Cotonti, когда можно вылкадывать страницы статике на github.io? :)</p>
]]></description>
			<pubDate>Sa, 09 Nov 2013 11:42:49 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/de/forums?m=posts&q=7579&d=0#post38397]]></link>
		</item>
		<item>
			<title>Yusupov</title>
			<description><![CDATA[<p>Господа, есть ли смысл создавать такой плагин, если все это можно делать в githib, там же есть вики-раздел для репозитория?</p>

<p>Или это необходимо из-за того, что нужна мультиязычность базы знаний?</p>
]]></description>
			<pubDate>Sa, 09 Nov 2013 10:55:43 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/de/forums?m=posts&q=7579&d=0#post38396]]></link>
		</item>
		<item>
			<title>Trustmaster</title>
			<description><![CDATA[<p>Не понял, зачем Wiki нужен свой шаблонизатор. По-моему, хватит обычных TPL, а внутри - однозначно разметка на Markdown. Парсер и редактор Markdown у нас уже есть.</p>
]]></description>
			<pubDate>Sa, 09 Nov 2013 08:51:21 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/de/forums?m=posts&q=7579&d=0#post38393]]></link>
		</item>
		<item>
			<title>Macik</title>
			<description><![CDATA[<p>Тут хочу обобщить свое видение и идеи касательно Wiki плагина (пока общие наброски).</p>

<p>Во-первых, разрабатывать проще когда есть некий план / тех.задание, во-вторых, чтобы если кто-то начнет писать, то делал бы это с оглядкой на пожелания и мнения других разработчиков.</p>

<p>Основные требования, которые описал Владимир:</p>

<ul style="padding-right:0px;padding-left:30px;margin-top:15px;margin-right:0px;margin-left:0px;font-family:Helvetica, arial, freesans, clean, sans-serif;line-height:22.100000381469727px;background-color:rgb(251,251,251);margin-bottom:0px;"><li>Совместимость с модулем <code style="font-family:Consolas, 'Liberation Mono', Courier, monospace;font-size:12px;margin:0px 2px;padding:0px 5px;border:1px solid rgb(221,221,221);background-color:rgb(248,248,248);white-space:nowrap;">page</code> и плагином <code style="font-family:Consolas, 'Liberation Mono', Courier, monospace;font-size:12px;margin:0px 2px;padding:0px 5px;border:1px solid rgb(221,221,221);background-color:rgb(248,248,248);white-space:nowrap;">i18n</code>.</li>
	<li>История изменений и их визуализация</li>
	<li>Управление доступом через систему прав</li>
	<li>Модерация</li>
</ul><p>от себя добавлю:</p>

<ul><li>функционал истории изменений хотелось бы видеть отдельным плагином (т.к. хранение истории и визуализация изменений - это отдельный и объемный функционал)</li>
	<li>сделать плагин истории изменений максимально универсальным (как минимум, чтобы можно было использовать с простыми страницами, вне зависимости от парсера, а то и вообще с любым ресурсом). вызов через функции и хуки.</li>
	<li>без необходимости не создавать дополнительных полей в таблице cot_pages (и дургих стандартных), лучше завести отдельную таблицу, как более универсальный и гибкий вариант.</li>
	<li>для экономии (а мелких правок могут быть тысячи) - версии документа хранить только как последнюю версию + изменения в сравнении с предыдущей версией. </li>
	<li>по необходимоти промежуточные скомпилированные версии документов хранить в кеше.</li>
</ul><p>Компоненты, назначение и функционал:</p>

<ul><li>Wiki-шаблонизатор. - класс который будет обрабатывать секции, ссылки, внутренние шаблоны.(что-то наподобие CoTemplate, но с учетом wiki специфики, возможно что это будет некий препроцессор, который будет генерить на выходе CoTemplate совместимый шаблон, тогда мы сильно сэкономим на реализации шаблонизатора. Вопрос в скорости.) </li>
	<li>Парсер-wiki разметки. Код который будет преобразовывать текстовую разметку в html код.<br /><br />
	Пока не очень разбираюсь во внутренней кухне wiki. Возможно модуль шаблонизатора и парсера можно/надо надо будет объединить. Основные требования к ним это:</li>
</ul><ol><li>умение обрабатывать вложенные шаблоны/конструкции </li>
	<li>возможность задавать правила базовой разметки в удобном виде без необходимости правки кода</li>
	<li>само собой кеширование </li>
</ol><ul><li>редактор wiki разметки (например на базе markitup)</li>
	<li>интерграция редактора с простым загрузчиком файлов, для загрузки и сктавки в текст соответствующих ссылок на иллюстрации или документы (как пример тот же elFinder).</li>
</ul><p> </p>

<p><span style="line-height:1.6em;">Вопросы:</span></p>

<ul><li>на сколько стоит придерживаться правил оригинальной mediawiki разметки (особенно выхов шаблонов и вызов с аргументами)? Уж больно страшно там выглядят некоторые конструкцуии для неподготовленного человека.</li>
</ul><p> </p>

<p>Ссылки по теме:</p>

<ul><li>Кратко о том <a href="http://habrahabr.ru/post/148756/" rel="nofollow">как работает Wiki парсер</a></li>
	<li>Реализация Diff на PHP - <a href="http://code.stephenmorley.org/php/diff-implementation/" rel="nofollow">вариант 1</a>, <a href="http://www.raymondhill.net/finediff/viewdiff-ex.php" rel="nofollow">вариант 2</a> (второй показался мне более гибким)</li>
</ul><p> </p>

<p>И еще раз подытоживая — я крайне рекомендую сначала в обсуждении среди разработчиков разработать каркас «на бумаге», своего рода ТЗ, и потом уже браться за реализацию. Иначе это в лучшем случае грозит созданием узкоспециализированного плагина, который невозможно расширить, хуже если невозможно пользоваться и в худшем вообще все застопориться в виду отсутствия ресурсов.</p>

<p> </p>

<p> </p>
]]></description>
			<pubDate>Sa, 09 Nov 2013 05:52:22 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/de/forums?m=posts&q=7579&d=0#post38386]]></link>
		</item>
	</channel>
</rss>