Модуль Константы пользователя
В константах нужно сделать разбивку на группы или отдельный модуль со своей структурой...
Для чего?
Вот нужно вывести какой-то номер телефона в шапку сайт или в футер и нужно заходить в макеты человеку который не знает не черта в html у него просто паника.... А так объяснил, что там то там оно меняется и проблема решена. Или где-то в скриптах использовать... Очень было б удобно в одном месте менять параметр влияющий на весь сайт...
Решения через страницы и документы?
Не подходит пробовал создает лишние теги! Вообще не предназначен для таких целей...
И еще вопрос не мешало б документации описать как вызывать эти константы...
И как в 6 версии вызвать константу текущий год?
Комментарии
-
Реализовано в 6.1.0
-
Директории для констант приняты к реализации.
-
А вообще, мне представляется, что данная проблема может быть решена просто добавлением доп.свойств на вкладку "сайты", так чтобы у каждого сайта был свой набор доп.свойств.
Тоже вариант. Но решение какое-то нужно все таки придумать! В принципе модуль константы реализован вполне так как надо... Нужно тот же функционал + каталоги + (удаляемые, не удаляемые...) и все больше не чего.
Да, это было бы самое лучше решение.
-
на самом деле то, о чем вы пишете здесь - реально реализовать на базе инфосистемы той же.
Информационный элемент будет служить константой. Его название - текст для юзера, а одно из полей можно использовать для латинского наименования константы.
Потом в макете просто дописываете функцию, которая циклом проходит и объявляет их. Вот и все.Ну да давай-те изобретем новую галактику... Слетаем на Марс. Спросим совета и Била. А потом сядем и добавим в константы папки.
Ну это уже совсем overkill :)
Я, впрочем, для себя придумал на этот счет класс SiteSettings, который при инициализации читает нужные данные из массива в файле, и потом любой элемент этого массива доступен через метод get экземпляра класса по индексу.
Недостаток у него только один - я не писал для него админку, мне при моем workflow достаточно удобно просто править массив в файле, а заказчикам и их вебмастерам там править нечего.Ну собственно я предложил вариант с админкой, который можно быстро реализовать и для заказчика понятный. Но опять же я не могу представить сайта, где так много констант нужно) более того, которыми должен управлять клиент)
-
А еще проще, создать нужную константу в модуле "Константы"
Нужно доработать там папки! Что разделять системные и пользовательские вот о чем я прошу!
-
> как вызывать эти константы...
echo CONSTANT_NAME;
и больше никак.
> И как в 6 версии вызвать константу текущий год?
не поверите,
echo date('Y');
А константы с годом никогда в системе не было, был метод GetCurrentYear у класса kernel, который внутри себя делал абсолютно то же самое.
Если вам нужны какие-то пользовательские константы, то их можно определить, например, в макете самого верхнего уровня, в самом начале, еще до тега html.
Поскольку константы имеют глобальную область видимости, то они будут доступны и в других макетах, и в ТДС.С глобальными переменными была, почему-то, проблема при ajaxе. Когда загружался первый (основной) со всеми внутренностями - всё хорошо.
При первой (!) загрузке внутрь блока контента, где использовались переменные - они не срабатывали.
Потом, если обновить страницу и во всех последующих загрузках, всё Ок.Скорее всего вы объявляли глобальную переменную где-то в коде, который исполняется уже после того как отрабатывал ajax-обработчик
Глобальная переменная объявлялась в основном макете, который загружен до ajaxа.
Да хрен там, любой макет подключается уже после всех возможных ajax-обработчиков, и только в том случае, если ни один из этих обработчиков не был реально вызван, потому что все они заканчиваются exit() и тогда до макета дело не доходит вообще.
Вспомните ту схемку обработки запросов в HostCMS, которую я, если мне не изменяется память, именно для вас и нарисовал :)1) Загружается страница в макете которой объявляются глобальные переменные.
2) После того, как первая страница загружена и все переменные заданы, по клику запускается ajax подгрузка контента, в которой используются эти переменные.
Вот это я имел ввиду, когда говорил, что макет был загружен до ajax1) Загружается страница в макете которой объявляются глобальные переменные.
2) После того, как первая страница загружена и все переменные заданы, по клику запускается ajax подгрузка контента, в которой используются эти переменные.
Вот это я имел ввиду, когда говорил, что макет был загружен до ajaxЯ так и делаю! И другим рассказываю. Ну все же нужны константы которые будут делиться по папкам и быстро нужно будет найти нужную константу... А то сейчас тяжело что-то там найти а представьте если я еще 100-200 своих запулю? Там черт ногу сломит! Также нужно сделать удаляемые и не удаляемые константы. Что пользователь случайно не удалил константу после которой сайт повиснет
А фильтр сверху для чего?
А фильтр сверху для чего?