Forums / National / Russian / Идеи / Рефакторинг TPL-тегов

Kort
#1 2024-03-02 18:17

Такой момент: если переходим на новую нотацию TPL-тегов, то желательно иметь какой-то режим для тестирования. Например, добавить в конфиги настройку "Режим совместимости", которая будет включать и отключать старые теги. Иначе нет наглядности.

SED.by - создание сайтов, разработка плагинов и тем для Котонти
Kopusha
#2 2024-03-02 18:34

Че еще за "новая нотация"?)

Kort
#3 2024-03-02 18:49

Тыц

Повторю еще раз: старые теги пока остаются рабочими для совместимости, но когда-нибудь она (совместимость) закончится. Так что хотелось бы иметь возможность тестировать "по-боевому"

SED.by - создание сайтов, разработка плагинов и тем для Котонти
Kabak
#4 2024-03-03 05:34

По-моему уже некоторые старые теги исчезли и уже придётся шерстить все относительно старые темы.  В общем переходите на новую версию движка осторожнее...

 

По-моему следует опубликовать полный список старых тегов и соответствующий новый список.  ( если список Тыц не полный )

Добавлено 2 часа спустя:

{PAGE_SHORTTITLE} - устарел    

Это значит, что тега больше не будет существововать и замены не будет ?

This post was edited by Kabak (2024-03-03 08:18, 1 month ago)
Sergeich Online
#5 2024-03-03 09:13

А есть вообще у нас список всех тегов с разбивкой по tpl и описанием? 

Kort
#6 2024-03-03 09:14

Такое впечатление, что это не я отсутствовал два месяца)

Да, TPL-тег PAGE_SHORTTITLE объявили устаревшим. Вместо него будет давно просимый и более осмысленный PAGE_TITLE. Крошки будут в новом теге PAGE_BREADCRUMBS.

Пока что PAGE_SHORTTITLE доступен -- для совместимости. Т.е. чтобы сайт не ломался сразу, а у тебя было время спокойно переписать теги в теме.

Мое предложение: блок

            // @deprecated in 0.9.24
            'SHORTTITLE' => htmlspecialchars($page_data['page_title'], ENT_COMPAT, 'UTF-8', false),
            'LOCALSTATUS' => $L['page_status_' . $page_data['page_status']],
            'CATURL' => $cat_url,
            'CATTITLE' => $catTitle,
            'CATPATH' => $catpath,
            'CATPATH_SHORT' => cot_rc_link($cat_url, $catTitle),
            'CATDESC' => (isset($structure['page'][$page_data['page_cat']]['desc'])
                && $structure['page'][$page_data['page_cat']]['desc'] != '') ?
                htmlspecialchars($structure['page'][$page_data['page_cat']]['desc']) : '',
            'CATICON' => isset($structure['page'][$page_data['page_cat']]['icon']) ?
                $structure['page'][$page_data['page_cat']]['icon'] : '',
            'OWNERID' => $page_data['page_ownerid'],
            'OWNERNAME' => (isset($page_data['user_name']) && $page_data['user_name'] != '') ?
                htmlspecialchars($page_data['user_name']) : '',
            'DESC' => (isset($page_data['page_desc']) && $page_data['page_desc'] != '') ?
                htmlspecialchars($page_data['page_desc']) : '',
            'DESC_OR_TEXT' => (isset($page_data['page_desc']) && $page_data['page_desc'] != '') ?
                htmlspecialchars($page_data['page_desc']) : $text,
            'DESC_OR_TEXT_CUT' => (isset($page_data['page_desc']) && $page_data['page_desc'] != '') ?
                htmlspecialchars($page_data['page_desc']) : $text_cut,
            'FILE_COUNT' => $page_data['page_filecount'],
            'FILE_COUNTTIMES' => cot_declension($page_data['page_filecount'], $Ls['Times']),
            'COUNT' => $page_data['page_count'],
            'NOTAVAILABLE' => ($page_data['page_begin'] > Cot::$sys['now'])
                ? Cot::$L['page_notavailable'] . cot_build_timegap(Cot::$sys['now'], $page_data['page_begin'])
                : '',
            // /@deprecated

обрамить примерным условием

if ($cfg_compatibility_mode) {
   // @deprecated
   ...
}

-- так, чтобы можно было через включение и отключение настройки cfg_compatibility_mode тестировать тему в режиме обновленных тегов.

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

Естественно, все имена и код для примера.

SED.by - создание сайтов, разработка плагинов и тем для Котонти
Alex300
#7 2024-03-03 14:32

Такой момент: если переходим на новую нотацию TPL-тегов, то желательно иметь какой-то режим для тестирования. Например, добавить в конфиги настройку "Режим совместимости", которая будет включать и отключать старые теги. Иначе нет наглядности.

Отличная идея. На днях сделаю.

 

А есть вообще у нас список всех тегов с разбивкой по tpl и описанием? 

Попробую навести порядок тут https://www.cotonti.com/tpltags.

Также можно посмотреть список доступных тегов и блоков в текущем шаблоне или загянуть в код нужного расширения.

Есть миры, не здесь, там, где небеса горят, и моря засыпают, и реки дремлют; люди сделаны из дыма, а города – из песен. Где-то опасность, где-то несправедливость, даже где-то остыл чай. Идем Эйс, у нас много работы!...
...Sorry for my english...
Бесплатные расширения для Cotonti: https://lily-software.com/free-scripts/
This post was edited by Alex300 (2024-03-03 15:03, 1 month ago)
Sergeich Online
#8 2024-03-03 14:47
Попробую навести порядок тут https://www.cotonti.com/tpltags.

Отлично. Там бы поправить таблицу, чтоб на неё правые блоки не наползали. Тоже поредактирую, полезный раздел, даже не знал о его существовании :)

Alex300
#9 2024-03-05 16:29

Такой момент: если переходим на новую нотацию TPL-тегов, то желательно иметь какой-то режим для тестирования. Например, добавить в конфиги настройку "Режим совместимости", которая будет включать и отключать старые теги. Иначе нет наглядности.

Готово. Теперь все что было deprecated (кроме критичного) отключено. В том числе устаревшие теги. Если в конфиг добавить $cfg['legacyMode'] = true - все включится обратно.

Пользуйтесь. Если что то вдруг сломал - пишите )))

Есть миры, не здесь, там, где небеса горят, и моря засыпают, и реки дремлют; люди сделаны из дыма, а города – из песен. Где-то опасность, где-то несправедливость, даже где-то остыл чай. Идем Эйс, у нас много работы!...
...Sorry for my english...
Бесплатные расширения для Cotonti: https://lily-software.com/free-scripts/
This post was edited by Alex300 (2024-03-05 16:47, 1 month ago)
Kort
#10 2024-03-06 13:03

Так может надо было по умолчанию true делать? Я именно так и предполагал)

А сурово получилось, если обновлять сайт с традиционными тегами без оного конфига.

SED.by - создание сайтов, разработка плагинов и тем для Котонти
This post was edited by Kort (2024-03-06 18:14, 1 month ago)
Alex300
#11 2024-03-07 08:46

Сделал по умолчанию $cfg['legacyMode'] = true При автоматическом обновлении будет включено. Вот думаю, стоит ли отключать ее при новой установке.

Есть миры, не здесь, там, где небеса горят, и моря засыпают, и реки дремлют; люди сделаны из дыма, а города – из песен. Где-то опасность, где-то несправедливость, даже где-то остыл чай. Идем Эйс, у нас много работы!...
...Sorry for my english...
Бесплатные расширения для Cotonti: https://lily-software.com/free-scripts/
Kort
#12 2024-03-07 09:26

При новой старые теги точно не нужны. Померла, так померла.

SED.by - создание сайтов, разработка плагинов и тем для Котонти
Sergeich Online
#13 2024-03-07 09:33

кстати да, подробную инструкцию по переходу надо, а тянуть поддержку особого смысла нет. Не так много пользователей и совсем мало разработчиков. 

Kort
#14 2024-03-07 09:40

TPL-теги для небольшого сайта обновляются быстро и несложно. Основное -- PAGE_TITLE, LIST_CAT_*** и PAGE_BEGIN. Кое-где паджинация. Юзеровские теги и остальное пока не трогал. Плюс надо почистить темы админок у кого есть)) Другое дело -- переименование переменных в ядре. Там частично может затронуть плагины в плане кода. Но в принципе, верной дорогой идем, товарищи)

SED.by - создание сайтов, разработка плагинов и тем для Котонти
Alex300
#15 2024-03-07 13:45

Сделал: при новой установке: legacy mode выключен. При обновлении - если его не было в config.php - добавляется включенным.

Есть миры, не здесь, там, где небеса горят, и моря засыпают, и реки дремлют; люди сделаны из дыма, а города – из песен. Где-то опасность, где-то несправедливость, даже где-то остыл чай. Идем Эйс, у нас много работы!...
...Sorry for my english...
Бесплатные расширения для Cotonti: https://lily-software.com/free-scripts/