Данный материал предоставлен сайтом ProWebber.cc исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое.
Скачать бесплатно Расширение функционала шаблонизатора новостей. Условия IF.
Скачать бесплатно Расширение функционала шаблонизатора новостей. Условия IF.
Простой, но многофункциональный хак, позволяющий выводить заданный текст в зависимости от значения полей новости или доп. полей xfields.
Данный хак предназначен для работы только в шаблонах короткой новости, полной новости и в шаблонах тегов custom.
[Поддерживаемые поля]
id - порядковый номер новости (число)
autor - имя автора новости (текст)
date - дата публикации (число, дата в unix формате - 1384805563)
short_story - текст короткой новости (текст)
full_story - в шаблоне короткой новости это количество символов в полном описании. В шаблоне полной новости - сам текст. (число/текст)
title - текст заголовка (текст)
descr - метатег описания (текст)
keywords - метатег "ключевые слова" (текст)
category - список категорий в которых отмечена новость (в старых версиях только первый ID из списка) (текст)
alt_name - заголовок на латинице, для формирования адреса страницы. (текст)
comm_num - количество комментариев (число)
allow_comm - комментарии разрешены (число, 1/0)
allow_main - новость публикуется на главной (число, 1/0)
approve - новость прошла модерацию (число, 1/0)
fixed - новость зафиксирована (число, 1/0)
symbol - символьный код (текст)
tags - первый тег из списка тегов (текст)
news_read - количество просмотров (число)
allow_rate - рейтинг разрешен (число, 1/0)
rating - рейтинг статьи, сумма всех значений (число)
vote_num - количество проголосовавших в рейтинге (число)
votes - голосования в новости (число, 1/0)
view_edit - отображать причину редактирования (число, 1/0)
disable_index - запретить индексацию (число, 1/0)
editdate - дата редактирования (число, дата в unix формате - 1384805563)
editor - имя редактора (текст)
reason - причина редактирования (текст)
user_id - ID автора публикации (число)
xfvalue_xxx - значение доп. поля
autor - имя автора новости (текст)
date - дата публикации (число, дата в unix формате - 1384805563)
short_story - текст короткой новости (текст)
full_story - в шаблоне короткой новости это количество символов в полном описании. В шаблоне полной новости - сам текст. (число/текст)
title - текст заголовка (текст)
descr - метатег описания (текст)
keywords - метатег "ключевые слова" (текст)
category - список категорий в которых отмечена новость (в старых версиях только первый ID из списка) (текст)
alt_name - заголовок на латинице, для формирования адреса страницы. (текст)
comm_num - количество комментариев (число)
allow_comm - комментарии разрешены (число, 1/0)
allow_main - новость публикуется на главной (число, 1/0)
approve - новость прошла модерацию (число, 1/0)
fixed - новость зафиксирована (число, 1/0)
symbol - символьный код (текст)
tags - первый тег из списка тегов (текст)
news_read - количество просмотров (число)
allow_rate - рейтинг разрешен (число, 1/0)
rating - рейтинг статьи, сумма всех значений (число)
vote_num - количество проголосовавших в рейтинге (число)
votes - голосования в новости (число, 1/0)
view_edit - отображать причину редактирования (число, 1/0)
disable_index - запретить индексацию (число, 1/0)
editdate - дата редактирования (число, дата в unix формате - 1384805563)
editor - имя редактора (текст)
reason - причина редактирования (текст)
user_id - ID автора публикации (число)
xfvalue_xxx - значение доп. поля
Разумеется для некоторых из этих тегов уже предусмотрены фиксированные теги условий, такие как: [fixed]...[/fixed], [comments]...[/comments], [poll]...[/poll], [xfgiven_xxx]...[/xfgiven_xxx] и др.
Но во первых они прописаны не для всех значений и главное - не обладают той гибкостью, что предоставляет данных хак. В чем вы можете убиться посмотрев примеры ниже.
[Примеры использования]
[if id>1000]...[/if] - выведет текст для всех новостей, ID которых строго больше 1000, т.е. 1001, 1002 и т.д.
[if comm_num<=10]мало комментариев[/if] - выведет текст "мало комментариев", если в новости 10 или меньше комментариев
[if tags="2015"]Все фильмы 2015 года[/if] - выведет текст "Все фильмы 2015 года", если в новости в поле тегов введено слово "2015"
Но в то же время, если вы используете поле tags только для указания года, то можно использовать так:
[if tags<2000]ретро[/if] - если год выпуска 1999 и младше, то будет выведен текст "ретро"
[if reason!='']есть причина редактирования[/if] - выведет текст внутри тегов, если есть причина редактирования.
[if reason='']поле причины редактирования не заполнено[/if] - выведет текст внутри тегов, если причина редактирования не указана
Доп.поля xfields
[if xfvalue_cost>=500]дорогой товар[/if] - если значение доп.поля `cost` больше или равно 500, то будет отображен текст внутри тегов
[if xfvalue_brand='Nokia']телефон нокия[/if] - если в доп.поле `brand` укано значение "Nokia", то будет выведен текст внутри тегов
Диапазон
[if 500<xfvalue_cost>5000]...[/if] - будет отображен текст, если значение поля в пределах 500 - 4999 включительно
[if 1000<news_read>10000]...[/if] - будет выведен текст внутри тегов, если у новости количество просмотров в пределах 1000 - 9999 включительно
[Перечень поддерживаемых операций]
x<y - строго меньше
x>y - строго больше
x>=y - больше или равно
x<=y - меньше или равно
x=y - строго равно
x!=y - не равно
y1<x>y2 - диапазон
где:
x - имя поля или доп.поля
y - значение, числовое или текстовое
y1 и y2 - нижняя и верхняя границы для фильтра по диапазону
[Демо]
Смотреть демо
[Версия DLE]
любая
[Контакты]
ICQ: 404-037-556
Skype: Sander8804
E-Mail: [email protected]
[Покупка]
Стоимость хака - 2wmz
Приобрести модуль можно в автоматическом режиме
С уважением,
Олег Александрович a.k.a. Sander