У меня по всему сайту есть множество мест с условиями (в отдельные инклуды это не вынести что бы там править). Что то наподобии этого -
<!-- IF {PHP.item.item_rating} > 8.5 AND {PHP.ratings_count} > 20 AND {PHP.sys.now} - 302401 > {PHP.item.item_date} AND {PHP.sys.now} - 1296000 < {PHP.item.item_date} -->
Что то одно
<!-- ENDIF -->
<!-- IF {PHP.item.item_rating} > 9 AND {PHP.ratings_count} > 50 AND {PHP.sys.now} - 1296001 > {PHP.item.item_date} AND {PHP.sys.now} - 15552000 < {PHP.item.item_date} -->
Что то второе
<!-- ENDIF -->
|
Вот эти циферки 8.5 или 20 из условий во всех местах должны
а. быть идентичными
б. легко меняться при необходимости
На данный момент надо руками в 20+ TPL это править - даже автозамена не работает.
Как создать где то тхт файл к примеру с
small_item_rating = 8.5
small_rating_count = 20
medium_item_rating = 9
medium_rating_count = 50 и тд
Что бы в 1 месте поменял, а в условиях сделать как то так
<!-- IF {PHP.item.item_rating} > {PHP.small_item_rating} AND {PHP.ratings_count} > {PHP.small_rating_count } AND {PHP.sys.now} - 1296001 > {PHP.item.item_date} AND {PHP.sys.now} - 15552000 < {PHP.item.item_date} -->
Что то
<!-- ENDIF -->
|
Или плагином. Пробовал использовать {PHP.cfg.menu1} но их мало и это через попу - там не указать что за что отвечает и надо писать шпаргалку. Менять значения будет девочка-менеджер. Ей что {PHP.cfg.menu3} что {PHP.cfg.freetext3}
Added 11 minutes later:
PS и очень хотелось бы что бы эта конструкция заработала в таком условии
{PHP|cot_getfoliolist( 'index' , 25, 'UNIX_TIMESTAMP() - 43200 > item_date AND UNIX_TIMESTAMP() - 1296000 < item_date AND item_rating > 2' 'RAND()' , '' )}
|
{PHP.cfg.menu1} там не работает естественно.
Добавлено 5 часов спустя:
==============================
UPD
Написал я функцию
function flags_day_rating()
{
$flags_day_rating = '8' ;
return $flags_day_rating ;
}
|
Теперь у меня {PHP|flags_day_rating} выдает везде 8.
Как объеденить две переменные, ведь нет возможности прописать
{PHP
|flags_day_rating|cot_getfoliolist(
'index'
, 25,
'UNIX_TIMESTAMP() - 43200 > item_date AND UNIX_TIMESTAMP() - 1296000 < item_date AND item_rating > "this"'
'RAND()'
,
''
)}
Добавлено 12 минут спустя:
Разобрался - все работает
{PHP.flags_day_rating|cot_getfoliolist('temptodeletelateradmin', 1, 'UNIX_TIMESTAMP() - 43200 > item_date AND UNIX_TIMESTAMP() - 302400 < item_date AND item_rating > "$this"', "item_count DESC")}
Закрываем вопрос. Возможно кому то будет полезна информация.