Forums / National / Russian / Идеи / Пользовательские lang-файлы

Kort
#1 2024-08-16 08:42

Есть такая ситуация: некоему глобальному плагину в определенной локации (к примеру, Page-разделу events) требуются lang-строки. А в локации articles тоже требуются, но другие. Все это, конечно, можно добавить в lang-файл темы и грузить всегда и везде. К тому же cot_langfile() в качестве параметра $type принимает только core, module или дефолтный plugin.

Т.е. для использования кастомного lang-файла его надо или разместить в ядерной папке lang (что неполиткорректно) или создавать под него отдельный плагин. Сейчас я использую ресурсные файлы, которые можно разместить в "проектном" плагине:

plugins/project/inc/project.articles.php
plugins/project/inc/project.events.php

и грузить

if ($c == 'events') {
	require_once cot_incfile('project', 'plug', 'events');
}

Оно работает, но без удовольствия. К тому же полноценная локализация невозможна. Я думаю про кастомную функцию, которая позволяла бы грузить такие файлы из папки с темой или, по крайней мере, создавать разноименные lang-files в "проектном" (или любом) плагине.

Или не морочиться?)

SED.by - создание сайтов, разработка плагинов и тем для Котонти
Kabak Online
#2 2024-08-16 13:04

PHP - не С++ и переменные хранятся в памяти только во время выполения скрипта. Не вижу смысла мудрить. Просто хранить всё в lang и грузить по мере необходимости.

Вы только утежелите и усложните движок такими хитростями, если их будет много.

Alex300
#3 2024-08-16 13:30

Да, я бы в lang-файл темы добавил все необходимые строки. Это не нагрузит память при выполнении скрипта. А в шаблонах нужных категрий сделал бы вывод нужных строк. Так и каждая языковая строка имеет только одно значение. И путаницы не будет такой что в разные моменты эти строки имеют разные значения.

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

Так путаницы и нет. Речь просто о том, что конкретные наборы lang-строк используются только в конкретных локациях и стоит ли с этим бороться.

SED.by - создание сайтов, разработка плагинов и тем для Котонти