Категории форума

Пользовательские шаблоны для родительских разделов на форумах

Модуль "Forums". Как в Cotonti создать и подключить свои собственные шаблоны (макеты страниц) родительских категорий для отображения на сайте.


Administrator
Administrator • 30.01.2024 16:00 #1

Подключаем свои шаблоны для разных категорий в модуле "Forums".

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

Инструкция по реализации подключения.

Мы можем создавать и подключать пользовательские шаблоны для "родительских" разделов форума, добавив небольшой фрагмент кода после хука в строке 170 в файле forums.sections.php .

В ходе эксперимента был подключен пользовательский шаблон для получения информации о названии шаблона, в качестве примера "forums.sections.cotonti.tpl", который можно настроить так же, как это реализовано со списками страниц - "page.list.news.tpl", "page.list.system.tpl" и т.д.

Вот код:

$mskin = cot_tplfile(array('forums' ,'sections', Cot::$structure['forums'][$c]['tpl']));
$t = new XTemplate($mskin);

Теперь идем в папку с шаблонами (макетами) страниц вашей темы, например:

/public_html/themes/myskin*/modules/forums

* myskin  - это название вашего основного шаблона сайта

создаем новый файл шаблона раздела форума, например - forums.sections.parentcode.tpl, где "parentcode" - это код родительской категори раздела форума, который должен точно соответствовать коду любой вашей категории в структуре модуля форумов.

код категории в имени шаблона для разных разделов на форуме

Копируем в этот файл всё содержимое из дефолтного шаблона "forums.sections.tpl" и проверяем.

Посмотреть пример такой реализации можно по ссылке на этом сайте.

Пример подключения собственного макета шаблона для родительских категорий на форуме cotonti

English

We can create and connect custom templates for the "parent" sections of the forum by adding a small piece of code after the hook in line 170 in the file forums.sections.php .

see the required code above on this page.

During the experiment, a custom template was connected to obtain information about the template name, as an example of "forums.sections.cotonti.tpl", which can be customized in the same way as it is implemented with lists of pages - "page.list.news.tpl", "page.list.system.tpl", etc.

 

Отредактировано: Administrator (30.01.2024 16:55, 2 года назад)
2/2/0

webitproff
webitproff • 13.02.2024 12:25 #2

Alex300 добавил в планы на релиз  0.9.25 внести измения и сделать подобно как в модуле Pages:

$mskin = cot_tplfile(array('forums' ,'sections', Cot::$structure['forums'][$c]['tpl']));

/* === Hook === */
foreach (cot_getextplugins('forums.sections.main') as $pl) {
	include $pl;
}
/* ===== */

$t = new XTemplate(cot_tplfile($mskin));

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

<?php
/* ====================
  [BEGIN_COT_EXT]
  Hooks=forums.sections.main
  [END_COT_EXT]
  ==================== */

defined('COT_CODE') or die('Wrong URL');

$mskin = cot_tplfile(array('forums' ,'sections', Cot::$structure['forums'][$c]['tpl']));
$t = new XTemplate($mskin);

 

Отредактировано: Administrator (13.02.2024 12:29, 2 года назад)
Administrator
Administrator • 13.02.2024 12:33 #3
#29 webitproff:

Alex300 добавил в планы на релиз  0.9.25 внести измения

Да, идея своеобразная, вот пример реализации самостоятельного шаблона для родительской категории форума (секции/раздела).

🗿

🧙‍♂️ Радуйся, странниче добрый и честный! Не понапрасну привела тя стезя в земли сии. Зде бо мужи мудры и искусники дела писменнаго и численнаго, что куют словеса и плетут узоры кода, тайны разгадывают и знанием делятся, летописи множа и ремесло цифровое творя.
⬅️ Аще налево пойдеши — обрящеши грамоты древния, писания старинныя и свитки учения. ⬆️ Аще прямо — слово мудрое и совет от мужей разумеющих, что в деле кодописном искусны, получиши. ➡️ Аще направо — сам в писцы и летописцы внидеши, и в ремесло цифровое, где строки и знаки в дело живое обращаются, слово свое в память веков вложиши.
📝 Не медли же — нареки имя свое, и вниди в чин наш, и стань с нами в братстве, где код есть магия, а строки — заклятия живыя, числом и буквою слово едины суть.
🏰 Не тайно есть собрание сие, и не инициации в нем, но многое сокрыто от пришлых и ступалого, понеже не всякому открывается знание, но токмо ищущим и пребывающим в деле сем.