Обновляем тему Cotonti для совместимости с версией 0.9.24.2 и новее
Популярные запросы: Open Graph, плагин Reading Time, тема Quebec, плагин Telegram, набор иконок Analogue
- 670 просмотров +1
- 23 марта, 2024
- Обновлено: 2 декабря, 2025
- admin
- Время чтения: 8 минут
- 1 (Подробно)
Если вы обновляете свой сайт под управлением Cotonti Siena до версии 0.9.24.2, вам придется позаботиться об обновлении TPL-тегов в шаблонах темы. Использование настройки
$cfg['legacyMode'] = TRUE;
позволит в течение некоторого времени использовать старые теги, однако переход на новую нотацию лучше выполнить сразу. В данной статье подробно распишем данный процесс. Начнем с самой простой части.
Единообразные теги для вывода капчи
Данный теги используются в плагинах Comments и Contact, а также в модуле Users. Если раньше они отличались, то в новой редакции имена стали едиными:
| Шаблон | Было | Стало |
|---|---|---|
| users.register.tpl | {USERS_REGISTER_VERIFYIMG} | {USERS_REGISTER_VERIFY_IMG} |
| users.register.tpl | {USERS_REGISTER_VERIFYINPUT} | {USERS_REGISTER_VERIFY_INPUT} |
| comments.tpl | {COMMENTS_FORM_VERIFYIMG} | {COMMENTS_FORM_VERIFY_IMG} |
| comments.tpl | {COMMENTS_FORM_VERIFYINPUT} | {COMMENTS_FORM_VERIFY_INPUT} |
| contact.tpl | {CONTACT_FORM_VERIFYIMG} | {CONTACT_FORM_VERIFY_IMG} |
| contact.tpl | {CONTACT_FORM_VERIFYINPUT} | {CONTACT_FORM_VERIFY_INPUT} |
Теги в блоке паджинации
Как говорилось в релизе, за формирование блока постраничной навигации (паджинации или паджинатора) теперь отвечает функция cot_generatePaginationTags(). Это и удобно и правильно, поскольку все теги паджинатора станут единообразными. Конечно, при этом никто не воспрещает вам использовать "ручную" генерацию этих тегов в своих расширениях.
Общее правило теперь следующее: все теги паджинации будут иметь вид
[ПРЕФИКС_]ТЕГ
Мы взяли префикс в квадратные скобки для того, чтобы обозначить его необязательность. В тех шаблонах "коробочного" функционала, где по умолчанию паджинатор предполагается только в одном экземпляре, префикса не будет. Сами же теги будут выглядеть следующим образом:
| {PAGINATION} | непосредственно блок с ссылками в виде номеров страниц |
| {PREVIOUS_PAGE} | ссылка на предыдущую страницу |
| {FIRST_PAGE} | ссылка на первую страницу |
| {NEXT_PAGE} | ссылка на следующую страницу |
| {LAST_PAGE} | ссылка на последнюю страницу |
| {CURRENT_PAGE} | номер текущей страницы |
| {TOTAL_ENTRIES} | всего страниц |
| {ENTRIES_ON_CURRENT_PAGE} | записей на текущей странице |
| {ENTRIES_PER_PAGE} | записей на страницу |
| {TOTAL_PAGES} | всего страниц |
По умолчанию блок паджинации может выглядеть примерно так:
<!-- IF {PAGINATION} -->
<nav class="mb-4" aria-label="List Pagination">
<ul class="pagination pagination-sm justify-content-center mb-0">
{PREVIOUS_PAGE}{PAGINATION}{NEXT_PAGE}
</ul>
</nav>
<!-- ENDIF -->
В случае если блоков паджинации может быть несколько, рекомендуется использовать префиксы:
<!-- IF {LIST_CAT_PAGINATION} -->
<nav class="mb-4" aria-label="List Pagination">
<ul class="pagination pagination-sm justify-content-center mb-0">
{LIST_CAT_PREVIOUS_PAGE}{LIST_CAT_PAGINATION}{LIST_CAT_NEXT_PAGE}
</ul>
</nav>
<!-- ENDIF -->
Изменения TPL-тегов в модуле Forums
Первый блок изменений касается шаблона forums.posts.tpl:
| Было | Стало | Примечание |
|---|---|---|
| {FORUMS_POSTS_BREADCRUMBS} | новый тег с "хлебными крошками" | |
| {FORUMS_POSTS_SHORTTITLE} | {FORUMS_POSTS_TITLE} | заголовок ветки по аналогии с заголовком страницы модуля Page |
| {FORUMS_POSTS_PAGETITLE} | {FORUMS_POSTS_DESCRIPTION} | название стало более осмысленным |
Теги паджинации в "коробке" префиксов не имеют (см. пример выше).
Что касается пользовательских тегов, создаваемых с помощью функции cot_generate_usertags(), о них будет ниже, в разделе модуля Users. Общее правило таково, что теперь все смысловые части тегов указываются полностью и разделяются символом подчеркивания. Сравните:
<!-- Было -->
{FORUMS_POSTS_ROW_USERNAME}
{FORUMS_POSTS_ROW_USER_MAINGRP_TITLE}
<!-- Стало -->
{FORUMS_POSTS_ROW_USER_NAME}
{FORUMS_POSTS_ROW_USER_MAIN_GROUP_TITLE}
Изменения в шаблоне polls.admin.tpl модуля Polls
| Было | Стало | Примечание |
|---|---|---|
| {ADMIN_POLLS_ROW_POLL_URL_DEL} | {ADMIN_POLLS_ROW_POLL_DELETE_URL} | URL ссылки для удаления опроса |
| {ADMIN_POLLS_ROW_POLL_DELETE_CONFIRM_URL} | новый тег URLа ссылки для удаления опроса с подтверждением |
Изменения в шаблонах модуля PM (Private Messages)
Здесь явные изменения касаются только тегов паджинации. Они будут стандартными, т.е. без префиксов.
Изменения в шаблонах модуля Page
Сперва об изменениях в шаблонах списков страниц. По умолчанию это page.list.tpl В нем префикс LIST_ROWCAT_ заменен на более стандартный и типизированный LIST_CAT_ROW_ По паджинаторам мы уже писали выше: в блоке подразделов префикс будет LIST_CAT_ , а в блоке страниц префикс не нужен. Остальные изменения в таблице:
| Было | Стало | Примечание |
|---|---|---|
| {LIST_CATTITLE} | {LIST_BREADCRUMBS} | |
| {LIST_BREADCRUMBS_SHORT} | новый тег | |
| {LIST_ROWCAT_URL} | {LIST_CAT_ROW_URL} | |
| {LIST_ROWCAT_TITLE} | {LIST_CAT_ROW_TITLE} | |
| {LIST_ROWCAT_COUNT} | {LIST_CAT_ROW_COUNT} | напомним, что это тег с количеством страниц в разделе |
| {LIST_ROWCAT_DESC} | {LIST_CAT_ROW_DESCRIPTION} |
Теперь самое объемное – так называемые pagetags или страничные теги:
| Было | Стало | Примечание |
|---|---|---|
| {PAGE_SHORTTITLE} | {PAGE_TITLE} | |
| {PAGE_BREADCRUMBS} | новый тег | |
| {PAGE_LOCALSTATUS} | {PAGE_LOCAL_STATUS} | |
| {PAGE_CATURL} | {PAGE_CAT_URL} | |
| {PAGE_CATTITLE} | {PAGE_CAT_TITLE} | |
| {PAGE_CATPATH} | {PAGE_CAT_PATH} | |
| {PAGE_CATPATH_SHORT} | {PAGE_CAT_PATH_SHORT} | |
| {PAGE_CATDESC} | {PAGE_CAT_DESCRIPTION} | |
| {PAGE_CATICON} | {PAGE_CAT_ICON} | |
| {PAGE_CAT_ICON_SRC} | ||
| {PAGE_DESC} | {PAGE_DESCRIPTION} | |
| {PAGE_DESC_OR_TEXT} | {PAGE_DESCRIPTION_OR_TEXT} | |
| {PAGE_DESC_OR_TEXT_CUT} | {PAGE_DESCRIPTION_OR_TEXT_CUT} | |
| {PAGE_OWNERID} | {PAGE_OWNER_ID} | |
| {PAGE_OWNERNAME} | {PAGE_OWNER_NAME} | |
| {PAGE_DATE} | {PAGE_CREATED} | |
| {PAGE_DATE_STAMP} | {PAGE_CREATED_STAMP} | |
| {PAGE_FILE_COUNT} | {PAGE_FILE_DOWNLOADS} | |
| {PAGE_FILE_COUNTTIMES} | {PAGE_FILE_DOWNLOADS_TIMES} | |
| {PAGE_COUNT} | {PAGE_HITS} | |
| {PAGE_NOTAVAILABLE} | {PAGE_NOT_AVAILABLE} |
Изменения типовые – слова теперь разделены знаками подчеркивания, что делает их более читабельными. Полный список страничных тегов доступен в описании функции cot_generate_pagetags() в файле /modules/page/inc/page.functions.php
Изменения в шаблоне page.add.tpl
| Было | Стало | Примечание |
|---|---|---|
| {PAGEADD_FORM_DESC} | {PAGEADD_FORM_DESCRIPTION} | |
| {PAGEADD_FORM_OWNERID} | {PAGEADD_FORM_OWNER_ID} |
Изменения в шаблоне page.edit.tpl
| Было | Стало | Примечание |
|---|---|---|
| {PAGEEDIT_FORM_LOCALSTATUS} | {PAGEEDIT_FORM_LOCAL_STATUS} | |
| {PAGEEDIT_FORM_DESC} | {PAGEEDIT_FORM_DESCRIPTION} | |
| {PAGEEDIT_FORM_OWNERID} | {PAGEEDIT_FORM_OWNER_ID} | |
| {PAGEEDIT_FORM_PAGECOUNT} | {PAGEEDIT_FORM_HITS} | |
| {PAGEEDIT_FORM_FILECOUNT} | {PAGEEDIT_FORM_FILE_DOWNLOADS} |
Изменения в шаблонах модуля Users
Сперва о специфических изменениях в шаблонах.
Изменения в шаблоне users.details.tpl
| Было | Стало | Примечание |
|---|---|---|
| {USERS_DETAILS_ONLINETITLE} | {USERS_DETAILS_ONLINE_TITLE} | |
| {USERS_DETAILS_ONELINE} |
Изменения в шаблоне users.edit.tpl
| Было | Стало | Примечание |
|---|---|---|
| {USERS_EDIT_TITLE} | заголовок шаблона | |
| {USERS_EDIT_BREADCRUMBS} | хлебные крошки | |
| {USERS_EDIT_DETAILSLINK} | {USERS_EDIT_DETAILS_URL} | |
| {USERS_EDIT_MAINGRP} | {USERS_EDIT_MAIN_GROUP} |
Изменения в шаблоне users.passrecover.tpl
| Было | Стало | Примечание |
|---|---|---|
| {PASSRECOVER_TITLE} | заголовок шаблона | |
| {PASSRECOVER_BREADCRUMBS} | хлебные крошки |
Изменения в шаблоне users.profile.tpl
| Было | Стало | Примечание |
|---|---|---|
| {USERS_PROFILE_TITLE} | заголовок шаблона | |
| {USERS_PROFILE_BREADCRUMBS} | хлебные крошки | |
| {USERS_PROFILE_DETAILSLINK} | {USERS_PROFILE_DETAILS_URL} | |
| {USERS_PROFILE_EDITLINK} | {USERS_PROFILE_EDIT_URL} |
Изменения в шаблоне users.tpl
| Было | Стало | Примечание |
|---|---|---|
| {USERS_TITLE} | заголовок шаблона | |
| {USERS_BREADCRUMBS} | хлебные крошки | |
| {USERS_TOP_USERID} | {USERS_TOP_USER_ID} | |
| {USERS_TOP_MAINGRP} | {USERS_TOP_MAIN_GROUP} | |
| {USERS_TOP_REGDATE} | {USERS_TOP_REGISTRATION_DATE} | |
| {USERS_TOP_LOGCOUNT} | {USERS_TOP_LOGINS_COUNT} | |
| {USERS_TOP_GRPLEVEL} | {USERS_TOP_GROUP_LEVEL} | |
| {USERS_TOP_GRPTITLE} | {USERS_TOP_GROUP_TITLE} | |
| {USERS_TOP_POSTCOUNT} | {USERS_TOP_POSTS_COUNT} | |
| {USERS_TOP_FILTER_ACTION} | {USERS_FILTERS_ACTION} | |
| {USERS_FILTERS_PARAMS} | параметры фильтра | |
| {USERS_TOP_FILTERS_COUNTRY} | {USERS_FILTERS_COUNTRY} | |
| {USERS_TOP_FILTERS_MAINGROUP} | {USERS_FILTERS_MAIN_GROUP} | |
| {USERS_TOP_FILTERS_GROUP} | {USERS_FILTERS_GROUP} | |
| {USERS_TOP_FILTERS_SEARCH} | {USERS_FILTERS_SEARCH} | |
| {USERS_TOP_FILTERS_SUBMIT} | {USERS_FILTERS_SUBMIT} | |
| {USERS_FILTERS_SORT} | ||
| {USERS_FILTERS_SORT_WAY_URL} | ||
| {USERS_FILTERS_SORT_WAY} |
Все остальные пользовательские теги aka usertags формируются с помощью функции cot_generate_usertags(). Ее описание можно найти в файле /system/functions.php
Изменения в шаблонах плагина Recent Items
Изменения касаются шаблонов recentitems.forums.index.tpl и recentitems.forums.tpl
| Было | Стало | Примечание |
|---|---|---|
| {FORUM_ROW_FIRSTPOSTER} | {FORUM_ROW_FIRST_POSTER} | |
| {FORUM_ROW_LASTPOSTER} | {FORUM_ROW_LAST_POSTER} | |
| {FORUM_ROW_TIMEAGO} | {FORUM_ROW_TIME_AGO} | |
| {FORUM_ROW_POSTCOUNT} | {FORUM_ROW_POST_COUNT} | |
| FORUM_ROW_CREATIONDATE} | FORUM_ROW_CREATED} | |
| {FORUM_ROW_CREATIONDATE_STAMP} | {FORUM_ROW_CREATED_STAMP} | |
| {FORUM_ROW_REPLYCOUNT} | {FORUM_ROW_REPLY_COUNT} | |
| {FORUM_ROW_VIEWCOUNT} | {FORUM_ROW_VIEW_COUNT} | |
| {FORUM_ROW_LASTPOSTURL} | {FORUM_ROW_LAST_POST_URL} | |
| {FORUM_ROW_MAXPAGES} | {FORUM_ROW_MAX_PAGES} | |
| {FORUM_ROW_DESC} | {FORUM_ROW_DESCRIPTION} |
Для данных топикстартера используйте usertags с префиксом {FORUM_ROW_FIRST_POSTER_}. Для последнего ответившего в теме префикс {FORUM_ROW_LAST_POSTER_}. Паджинация стандартная, без префиксов.
В шаблонах recentitems.pages.tpl и recentitems.pages.index.tpl все изменения согласно новым пользовательским тегам.
Изменения в плагине Search
Все изменения согласно новым пользовательским тегам. Паджинация стандартная, без префиксов.
Изменения в плагине Tags
Паджинация стандартная, без префиксов.
Шаблон админки admin.extensions.tpl
| Было | Стало | Примечание |
|---|---|---|
| {ADMIN_EXTENSIONS_DETAILS_ROW_ORDER} | {ADMIN_EXTENSIONS_DETAILS_ROW_ORDER_INSTALLED} | |
| {ADMIN_EXTENSIONS_DETAILS_ROW_HOOKS} | {ADMIN_EXTENSIONS_DETAILS_ROW_HOOKS_INSTALLED} |
Новый комментарий
Ошибка
Выполнено