Релиз Cotonti v 0.9.24, изменения в исходном коде

Основные изменения в релизе 0.9.24. Список изменений и обсуждение обновления. Ошибки.

Автор
#1 Сообщение 30.01.2024 07:26
Оффлайн

Сообщения: 32

Онлайн рынок предметов продажи, торговая площадка для частных продавцов шаблонов и готовых сайтов, файлы, домены,

Список основных нововведений и изменений в этом релизе

Полный список изменений исходного кода посмотреть на GitHub.

  1. CoTemplate. Поддержка нескольких аргументов функции. Теперь вы можете написать так:
    {PHP|cot_url('page', 'c=news')|var_dump({PHP.L.Home}, $this, {PHP.cfg.mainurl}, {PHP|cot_url('page', 'c=news ')}, {HEADER_TITLE})}
  2. Поддержка $this оставлена на месте для обеспечения обратной совместимости.
  3. CoTemplate. Операторы строгого сравнения: === и !==code>
  4. Исправлена ошибка, из-за которой данные из кэша базы данных могли не загружаться автоматически.
  5. Улучшен статический кэш.
  6. Теперь вы можете использовать комментарии в файлах *.dat редактора URL
  7. Forums API. Новая функция cot_forums_sqlExcludePrivateTopics(), которая генерирует SQL-условие для исключения приватных тем из выборки на основе прав текущего пользователя. Вы можете использовать ее в своих расширениях.
  8. Счетчик просмотров страниц теперь работает даже при включенном статическом кэше страниц.
  9. Капча и публикация комментариев гостями теперь работают, когда включен статический кэш страницы.
  10. Поиск. Сортировка по умолчанию осуществляется по убыванию даты.
  11. Исправлены/добавлены мета-теги title, description и canonical url в некоторых расширениях
  12. Функция cot_generatePaginationTags() для единообразной генерации тегов разбивки на страницы в расширениях.
  13. Дополнительные поля. Проверка имени поля.
  14. CKEditor обновлен до версии 4.22.1. В будущих выпусках он будет заменен на версию 5.
  15. Начат рефакторинг тегов в шаблонах. Делаем теги более понятными и удобными. Старые теги сохранены для обеспечения обратной совместимости, но в будущем будут удалены. Мы рекомендуем обновить ваши темы.
  16. Папка Composer перенесена в lib/vendor
  17. 1-я часть улучшений плагина тегов
  18. Улучшения плагина последних элементов
  19. Другие незначительные улучшения
  20. Исправлены различные ошибки, обнаруженные во время работы.
  • Исправлена ошибка когда данные из БД кеша могли не подгружаться автоматически.

  • Проблема статичного кеша была в том, что он срабатывает на ранней стадии инициализации приложения, когда еще многие данные не загружены и не установлено соединение с БД. Это работает быстро, но вызывает проблемы с формированием правильных ключей. Теперь он использует uri для формирования ключей.
    Известные проблемы:
    Если кастомный пресет Url editor'a формирует ссылки на страницы вида:
    https://domain.tld/category/subcategory/<page_id>/<page_alias> (часть самой страницы содержит слеш)
    или
    https://category.domain.tld/subcategory/<page_alias>
    Ключ будет сформирован неверно

 

Изменения тегов в шаблонах сайтов на Cotonti начиная с релиза v 0.9.24:

Новые теги капчи:

users.register.tpl

шаблон регистрации пользователя

Было Стало Примечания
{USERS_REGISTER_VERIFYIMG}
{USERS_REGISTER_VERIFY_IMG}  
{USERS_REGISTER_VERIFYINPUT}
{USERS_REGISTER_VERIFY_INPUT}  

comments.tpl

шаблон комментариев

Было Стало Примечания
{COMMENTS_FORM_VERIFYIMG}
{COMMENTS_FORM_VERIFY_IMG}  
{COMMENTS_FORM_VERIFY}
{COMMENTS_FORM_VERIFY_INPUT}  

contact.tpl

шаблон плагина обратной связи

Было Стало Примечания
{CONTACT_FORM_VERIFYIMG}
{CONTACT_FORM_VERIFY_IMG}  
{CONTACT_FORM_VERIFY}
{CONTACT_FORM_VERIFY_INPUT}  

 

Единообразные теги постраничной навигации:

  • {PREFIX_PAGINATION}
  • {PREFIX_PREVIOUS_PAGE}
  • {PREFIX_NEXT_PAGE}
  • {PREFIX_CURRENT_PAGE}
  • {PREFIX_TOTAL_ENTRIES}
  • {PREFIX_ENTRIES_ON_CURRENT_PAGE}
  • {PREFIX_ENTRIES_PER_PAGE}
  • {PREFIX_TOTAL_PAGES}

PREFIX_ в большинстве случаев может быть пустым. Или нет, если на странице больше одной постраничной навигации.
например в шаблоне page.list.tpl:

Было Стало Примечания
{LIST_TOP_PAGINATION}
{PAGINATION} page.list.tpl
{LIST_TOP_PAGEPREV}
{PREVIOUS_PAGE} page.list.tpl
{LIST_TOP_PAGENEXT}
{NEXT_PAGE} page.list.tpl

{LIST_CAT_PAGINATION} для списка категорий, и {PAGINATION} списков страниц.

Было Стало Примечания
{LISTCAT_PAGNAV}
{LIST_CAT_PAGINATION} Управление сайтом / Расширения / Pages / Конфигурация
Макс. количество категорий на странице
{LISTCAT_PAGEPREV}
{LIST_CAT_PREVIOUS_PAGE} демонстрация постраничной навигации категорий
{LISTCAT_PAGENEXT}
{LIST_CAT_NEXT_PAGE}  


forums.posts.tpl


{FORUMS_POSTS_BREADCRUMBS} - новый
{FORUMS_POSTS_SHORTTITLE} -> {FORUMS_POSTS_TITLE}
{FORUMS_POSTS_PAGETITLE} -> {PAGEEDIT_FORM_DESCRIPTION}


все теги пользователей: {FORUMS_POSTS_ROW_USERXXX} -> {FORUMS_POSTS_ROW_USER_XXX}
например.
{FORUMS_POSTS_ROW_USERNAME} -> {FORUMS_POSTS_ROW_USER_NAME}
{FORUMS_POSTS_ROW_USERAVATAR} -> {FORUMS_POSTS_ROW_USER_AVATAR}
и т.д..

{PREVIOUS_PAGE}{PAGINATION}{NEXT_PAGE} и другие теги постраничной навигации без префикса.

 

polls.admin.tpl


{ADMIN_POLLS_ROW_POLL_URL_DEL} - устаревший
{ADMIN_POLLS_ROW_POLL_DELETE_URL} - новый
{ADMIN_POLLS_ROW_POLL_DELETE_CONFIRM_URL} - новый

 

system/admin/tpl/admin.extensions.tpl


{ADMIN_EXTENSIONS_DETAILS_ROW_ORDER_INSTALLED}
{ADMIN_EXTENSIONS_DETAILS_ROW_HOOKS_INSTALLED}

 

page.list.tpl

(анаогичные изменения в cot_page_enum())

Шаблон `page.list.tpl` - категория со списком статей

Было Стало Примечания
{LIST_CATTITLE}
{LIST_CAT_TITLE} Название категории страницы в списке статей
{LIST_CATDESC}
{LIST_CAT_DESCRIPTION} Описание категории в списке статей
{LIST_CATICON}
{LIST_CAT_ICON}

Иконка категории. Как пример:

        <!-- IF {LIST_CAT_ICON} --> 
		{LIST_CAT_ICON}
        <!-- ELSE -->
        <img width="27" height="27" alt="{LIST_CAT_TITLE}" src="{PHP.R.cat_icon_mylogo}">
        <!-- ENDIF -->

 


{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}

{LIST_CAT_XXX} - постраничная навигация для списков категорий с префиксом 'LIST_CAT_', e.g. {LIST_CAT_PREVIOUS_PAGE}, {LIST_CAT_PAGINATION}
И, без префикса для списка страниц, например: {PREVIOUS_PAGE}, {PAGINATION}.

Блок LIST_ROWCAT -> LIST_CAT_ROW

{LIST_ROW_XXX} - теги страниц, см. ниже.


page.tpl, page.enum.tpl

(from cot_generate_pagetags())
{PAGE_TITLE} теперь содержит именно заголовок, а не хлебные крошки
{PAGE_BREADCRUMBS} - новый
{PAGE_LOCALSTATUS} -> {PAGE_LOCAL_STATUS}
{PAGE_SHORTTITLE} - устарел
{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}


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}


pm.list.tpl, pm.message.tpl


Постраничная навигация без префикса: {PREVIOUS_PAGE}{PAGINATION}{NEXT_PAGE}...

 

polls.admin.tpl


{ADMIN_POLLS_ROW_POLL_DELETE_CONFIRM_URL} - новый
{ADMIN_POLLS_ROW_POLL_URL_DEL} -> {ADMIN_POLLS_ROW_POLL_DELETE_URL}

Пользователи. подробно об изменениях в этой теме.


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


Постраничная навигация без префикса: {PREVIOUS_PAGE}{PAGINATION}{NEXT_PAGE}...


{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_TITLE} - теперь это заголовок страницы
{USERS_BREADCRUMBS} - новый
{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} - новый


recentitems.tpl


Постраничная навигация без префикса: {PREVIOUS_PAGE}{PAGINATION}{NEXT_PAGE}...

 

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_POSTS_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_VIEWS_COUNT}
{FORUM_ROW_LASTPOSTURL} -> {FORUM_ROW_LAST_POST_URL}
{FORUM_ROW_MAXPAGES} -> {FORUM_ROW_MAX_PAGES}
{FORUM_ROW_DESC} -> {FORUM_ROW_DESCRIPTION}

{FORUM_ROW_FIRST_POSTER_XXX} - Теги топикстартера (пользователь)
{FORUM_ROW_LAST_POSTER_XXX} - Теги пользователя, оставившего последний пост в теме:


recentitems.pages.tpl, recentitems.pages.index.tpl, search.tpl
см.: page.tpl (from cot_generate_pagetags())


tags.tpl
Постраничная навигация без префикса: {PREVIOUS_PAGE}{PAGINATION}{NEXT_PAGE}...

Какие именно теги нужны, можете использовать дефолтную тему, также можно посмотреть в код нужного расширения.

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

Как получить доступные теги и их список в Cotonti?

Отредактировано: Administrator (14.04.2024 12:40, 1 год назад)