icq 775084, alexz006,

Макросы | плагин макросов для Notepad++

Если имеется конструкция вида {{@М_АКРОС('Z',X,Y)}}, то:
'Z' - любые символы для разделения выводимого контента. например, '<br>' или ', ' и тд.
X,Y - кол-во случайного контента от X до Y.
Такие макросы так же можно писать так: {{ @М_АКРОС() }} - в таком случае выведется одно случайное значение макроса.

Пример 1: {{@SNIPP_TITLE('<br>',1,5)}} - покажет на странице от 1 до 5 тайтлов из сниппета по текущему запросу, разделенным(и) тегом <br>.
Пример 2: {{@Q_IMAGES_URL_SMALL()}} - выведет на странице случайный URL на уменьшеную копию спарсенного изображения.

 


Локальные (L)

Макросы, которые ничего не парсят.

{{@L_TITLE}}

Название сайта
{{@L_TITLE}}

{{@L_QUERY}}

Текущий поисковый запрос на странице с маленькой буквы. Если пустой, например, на главной, то случайный из Кейвордов
{{@L_QUERY}}

{{@L_BQUERY}}

Текущий поисковый запрос на странице с большой буквы. Если пустой, например, на главной, то случайный из Кейвордов
{{@L_BQUERY}}

{{@L_QUERY_URL}}

URL в латинице по текущему поисковому запросу на странице (если пустой, например, на главной), то первый из Кейвордов (tekushiy-poiskoviy-zapros.html)
{{@L_QUERY_URL}}

{{@L_MAP_URL('Z',X,Y)}}

Случайный внутренний URL из карты сайта
{{@L_MAP_URL('<br>',2,5)}}

{{@L_MAP_KEY('Z',X,Y)}}

Случайный анкор из карты сайта с маленькой буквы
{{@L_MAP_KEY('<br>',2,5)}}

{{@L_MAP_BKEY('Z',X,Y)}}

Случайный анкор из карты сайта с большой буквы
{{@L_MAP_BKEY('<br>',2,5)}}

{{@L_MAP_HREF('Z',X,Y)}}

Случайная ссылка из карты сайта с маленькой буквы
{{@L_MAP_HREF('<br>',2,5)}}

{{@L_MAP_BHREF('Z',X,Y)}}

Случайная ссылка из карты сайта с большой буквы
{{@L_MAP_BHREF('<br>',2,5)}}

{{@L_RELATED_MAP_URL('Z',X,Y)}}

Похожий текущему запросу внутренний URL из карты сайта
{{@L_RELATED_MAP_URL()}}

{{@L_RELATED_MAP_KEY('Z',X,Y)}}

Похожий текущему запросу анкор из карты сайта с маленькой буквы
{{@L_RELATED_MAP_KEY('<br>',2,5)}}

{{@L_RELATED_MAP_BKEY('Z',X,Y)}}

Похожий текущему запросу анкор из карты сайта с большой буквы
{{@L_RELATED_MAP_BKEY('<br>',2,5)}}

{{@L_RELATED_MAP_HREF('Z',X,Y)}}

Похожая текущему запросу внутренняя ссылка из карты сайта с маленькой буквы
{{@L_RELATED_MAP_HREF('<br>',2,5)}}

{{@L_RELATED_MAP_BHREF('Z',X,Y)}}

Похожая текущему запросу внутренняя ссылка из карты сайта с большой буквы
{{@L_RELATED_MAP_BHREF('<br>',2,5)}}

{{@L_KEY('Z',X,Y)}}

Случайный кейворд
{{@L_KEY('<br>',2,5)}}

{{@L_BKEY('Z',X,Y)}}

Случайный кейворд с большой буквы
{{@L_BKEY('<br>',2,5)}}

{{@L_KEY_URL('Z',X,Y)}}

URL со случайным кейвордом в латинице (sluchayniy-keyword.html)
{{@L_KEY_URL()}}

{{@L_KEY_HREF('Z',X,Y)}}

Ссылка со случайным кейвордом
{{@L_KEY_HREF('<br>',2,5)}}

{{@L_BKEY_HREF('Z',X,Y)}}

Ссылка со случайным кейвордом с большой буквы
{{@L_BKEY_HREF('<br>',2,5)}}

{{@L_RELATED_KEY('Z',X,Y)}}

Похожий текущему запросу кейворд (для вывода одного кея можно прописать так: {{@L_RELATED_KEY()}})
{{@L_RELATED_KEY('<br>',2,5)}}

{{@L_RELATED_BKEY('Z',X,Y)}}

Похожий текущему запросу кейворд с большой буквы (для вывода одного кея можно прописать так: {{@L_RELATED_BKEY()}})
{{@L_RELATED_BKEY('<br>',2,5)}}

{{@L_RELATED_KEY_HREF('Z',X,Y)}}

Похожий текущему запросу кейворд-ссылка на страницу (для вывода одного кея можно прописать так: {{@L_RELATED_KEY_HREF()}})
{{@L_RELATED_KEY_HREF('<br>',2,5)}}

{{@L_RELATED_BKEY_HREF('Z',X,Y)}}

Похожий текущему запросу кейворд-ссылка на страницу с большой буквы (для вывода одного кея можно прописать так: {{@L_RELATED_BKEY_HREF()}})
{{@L_RELATED_BKEY_HREF('<br>',2,5)}}

{{@L_RELATED_KEY_URL('Z',X,Y)}}

Похожий текущему запросу URL (для вывода одного кея можно прописать так: {{@L_RELATED_KEY_URL()}})
{{@L_RELATED_KEY_URL()}}

{{@L_RANDNUM(X,Y)}}

Случайное число от X до Y.
Можно еще так:
{{mt_rand(X,Y)}}
{{@L_RANDNUM(2,5)}}

<l_randnum min="2" max="5" />

Аналог макроса {{@L_RANDNUM(X,Y)}}
<l_randnum min="2" max="5" />

{{@L_RANDIMG('folder/images')}}

Случайный урл на картинку из папки /folder/images, выведет ссылку типа folder/images/pict.jpg
{{@L_RANDIMG('folder/images')}}

<l_randimg src="folder/images" />

Аналог макроса {{@L_RANDIMG('folder/images')}}
<l_randimg src="folder/images" />

{{@L_RANDTXT('folder/txtfile.txt', 'Z', X,Y)}}

Случайная строка из файла /folder/txtfile.txt
{{@L_RANDTXT('folder/txtfile.txt', ' ', 2,5)}}

{{@L_BRANDTXT('folder/txtfile.txt', 'Z', X,Y)}}

Случайная строка из файла /folder/txtfile.txt с большой буквы
{{@L_BRANDTXT('folder/txtfile.txt', ' ', 2,5)}}

{{@L_DRANDTXT('folder/txtfile.txt', 'Z', X,Y)}}

Вывод случайной строки из файла /folder/txtfile.txt и последующее ее удаление.

Создается дополнительная нагрузка на сервер!
{{@L_DRANDTXT('folder/txtfile.txt', ' ', 2,5)}}

{{@L_BDRANDTXT('folder/txtfile.txt', 'Z', X,Y)}}

Вывод случайной строки из файла /folder/txtfile.txt с большой буквы и последующее ее удаление.

Создается дополнительная нагрузка на сервер!
{{@L_BDRANDTXT('folder/txtfile.txt', ' ', 2,5)}}

{{@L_RELATED_TXT('folder/txtfile.txt', 'Z', X,Y, B, 'Q', 'T')}}

Вывод случайной, похожей текущему запросу, строки из файла /folder/txtfile.txt, где:
Z - символ-разделитель строк;
X,Y - вывести ОТ и ДО;
B - 1 - с большой буквы, 0 - с маленькой;
Q - запрос, по которому выполняется поиск похожих строк;
T - названия тегов, которыми будут обрамляться найденные слова (u,i,strong).

Значения по умолчанию:
Z='';
X,Y=1,1;
B=0;
Q='';
T='';

Если не найдена похожая строка - выведет случайную.

Внимание! Если поиск происходит в большом файле и нет подходящей строки, то генерация страницы замедлится!
{{@L_RELATED_TXT('folder/txtfile.txt', ' ', 2,5)}}

{{@L_RANDFILE('folder')}}

Вывод случайного файла из папки folder
{{@L_RANDFILE('folder')}}

{{@L_DRANDFILE('folder')}}

Вывод случайного файла из папки folder и последующее его удаление (папка folder должна быть доступна для записи)
{{@L_DRANDFILE('folder')}}

{{@L_RANDQUOTE('ucontent/txtfile.txt','Z',X,Y)}}

Случайное предложение из файла /ucontent/txtfile.txt. Предложением считается текст до этих символов: .!?
{{@L_RANDQUOTE('folder/txtfile.txt', ' ', 2,5)}}

[Hello|[Hi|YOW]|Fuck]

Вставляется рандомный текст из указанных, разделенный «|». Можно использовать любые макросы и указывать много вариантов. Поддерживается вложенность.
[Hello|[Hi|YOW]|Fuck]

{{@L_TRANS('текст')}}

Переводит в транслит «текст» — tekst.html для получения URL
{{@L_TRANS('текст')}}

{{@L_TRANSLIT('текст')}}

Похожий с макросом L_TRANS, но используется только для перевода текста в транслит (сгенерированные с помощью него ссылки работать не будут)
{{@L_TRANSLIT('текст')}}

[STAT-X]content[/STAT]

Контент между макросами не будет меняться в пределах дорвея. X - любая уникальная метка.
[STAT-X]content[/STAT]

{{@L_DATE_TIME('d.m.Y, H:i', -X)}}

Выводит текущую дату с учетом добавления или отнимания X-часов и X-минут, где d.m.Y, H:i - шаблон вывода даты (подробнее).
Пример:
{{@L_DATE_TIME('d.m.Y, H:i', -23)}} выведет текущую дату и отнимет от нее 23 часа и 23 минуты (типа 04.10.2013, 02:52.
Можно просто написать так: {{@L_DATE_TIME()}} - покажет текущую дату и время.
{{@L_DATE_TIME('d.m.Y, H:i', -2)}}

{{@L_RANDSYM(X,Y,'Z')}}

Генерация случайных символов, где Z - символы, из которых будет генерироваться строка, X-Y - ОТ и ДО символов в строке.

Пример:
{{@L_RANDSYM(5,10,'0123456789')}} - выведет от 5 до 10 случайных цифр;
можно прописать так: {{@L_RANDSYM(5,10)}} - выведет от 5 до 10 случайных символов от a до z и от 0 до 9.
или так: {{@L_RANDSYM(10)}} - выведет 10 случайных символов от a до z и от 0 до 9.
{{@L_RANDSYM(5,7,'')}}

{{@L_GEN_NIK()}}

Сгенерирует никнейм. Макрос пишется со скобками ()!
{{@L_GEN_NIK()}}

<l_repeat count="X,Y">шаблон</l_repeat>

Шаблон будет повторятся от X до Y раз. Если Y нет, то повторит X раз.

Пример:
<l_repeat count="2,5">
строка № {COUNTER}
</l_repeat>

где {COUNTER} - номер текущего повторения.

На странице выведет:
строка № 1
строка № 2
строка № 3
<l_repeat count="2,5">
	{COUNTER}
</l_repeat>

<l_prob p="50">контент</l_prob>

С 50% вероятности выведет контент на страницу.
<l_prob p="50">контент</l_prob>

<l_href cat="Z">Текст</l_href>

Превратит Текст в ссылку, где Z - id категории или альтернативное имя категории.

Выведет:
<a href="cat/text.html" class="my_class">Текст</a>
<l_href cat="Z" class="my_class">Текст</l_href>

<l_keys_href count="X"><br></l_keys_href>

Случайная ссылка из всех кеев или карты сайта.

Поддерживаются любые html-атрибуты, а также атрибуты доргена:
count="X,Y" - от X [до Y] ссылок;
cat="X,Y" - выводить ссылки из категорий, id которых X[,Y,... и тд];
related="1" - похожие ссылки для текущей новости;
sitemap="1" - выводить только те ссылки, которые уже есть в карте сайта;

Выведет:
<a href="keyword.html" title="Кейворд" class="my_class">Кейворд</a>
<l_keys_href count="10" class="my_class"><br></l_keys_href>

<l_redirect href="PATH" url="URL">Анкор</l_redirect>

При переходе на страницу PATH сработает редирект на URL.

Выведет:
<a href="path/">Кейворд</a>
<l_redirect href="path/" url="http://google.com/search?q={{@L_QUERY}}" target="_blank" style="color:green">{{@L_QUERY}}</l_redirect>

<l_max_words count="X">Контент</l_max_words>

Обрежет Контент до X слов.
<l_max_words count="30">Контент</l_max_words>

<no_cache>Y</no_cache>

Вместо Y можно вставить любой контент, который не будет кешироваться. Это могут быть, например, короткие новости.

Пример:
тут html, закешированный контент

<no_cache>

{{ @L_RANDNUM(1, 1000) }} {* - на странице будет выводиться постоянно разное число *}

</no_cache>

html, контент


Внимание! Шаблон все также кешируется! Не кешируются ТОЛЬКО результаты выполнения кода в блоке <no_cache>Y</no_cache>
<no_cache>Y</no_cache>

<gen_img>Text</gen_img>

Сгенерирует уникальную картинку, где Text - текст, который будет добавлен в картинку (не обязательно).
Атрибуты:
width="400,500" - ширина ОТ и ДО. Можно указать одно значение;
height="300,400" - высота ОТ и ДО. Можно указать одно значение;
count="200,500" - кол-во фигур в картинке;
arc="1" - дуги;
text="1" - цифры и буквы;
string="1" - маленькие цифры и буквы;
ellipse="1" - эллипсы;
rectangle="1" - прямоугольники;
alpha="1" - прозрачность фигур.

Поддерживаются другие атрибуты типа alt, class и тд.
<gen_img width="400,500" height="300" count="200,500" arc="1" text="1" string="1" ellipse="1" rectangle="1" alpha="1" alt="{{@L_BQUERY}}" class="my_class">Text</gen_img>

{{@GEN_IMG(X,Y,'Text')}}

Аналог макроса <gen_img>Text</gen_img>, где:
X - ширина;
Y - высота;
Text - текст, который будет добавлен в картинку.
{{@GEN_IMG(500,300,@L_BQUERY)}}

<text_to_img>Text</text_to_img>

Сгенерирует уникальную картинку из Текста.
Атрибуты:
width="400,500" - ширина ОТ и ДО. Можно указать одно значение;
font_size="15" - размер шрифта;
color="#000" - цвет текста;
bgcolor="#ffffff" - цвет фона картинки;
bgimage="images/stars.jpg" - фоновое изображение, которое будет добавлено в картинку;
bgrotate="1" - рандомный поворот фона;
font="" - путь к файлу шрифтов TTF. Если пусто, то используется Arial;
name="" - имя файла изображения. Если пусто, то сгенерируется на основе текущего кея;

Поддерживаются другие атрибуты типа alt, class и тд.
<text_to_img width="400,500" font_size="15" color="#000" bgcolor="#ffffff" bgimage="images/stars.jpg" bgrotate="1" font="" name="" alt="{{@L_BQUERY}}" class="my_class">Text</text_to_img>

{{@TEXT_TO_IMG('text'...)}}

Аналог макроса <text_to_img>Text</text_to_img>

Передаваемые параметры идут в следующем порядке:
text, width, font_size, color, bgcolor, bgimage, bgrotate, name, font

Пример:
<img src="{{@TEXT_TO_IMG(@L_QUERY,300,12,'#000','#ffffff','images/stars.jpg',1,'','')}}" />
{{@TEXT_TO_IMG(@L_QUERY,300,12,'#000','#ffffff','images/stars.jpg',1,'','')}}

<my_img src="http://site.com/img.png" />

Скачает удаленную картинку http://site.com/img.png в папку uploads и выведет тег <img /> с локальным путем картинки.

Макрос можно прописать еще так:
<my_img>
<img src="http://site1.com/img1.png" />
<img src="http://site2.com/img2.jpg" />
</my_img>
<my_img src="http://site.com/img.png" width="500" height="300" alt="{{@L_BQUERY}}" class="my_class" />

{{@MY_IMG('http://site.com/img.png')}}

Аналог макроса <my_img src="http://site.com/img.png" />

Передаваемые параметры идут в следующем порядке:
text, width, font_size, color, bgcolor, bgimage, bgrotate, name, font

Пример:
<img src="{{@MY_IMG('http://site.com/img.png',300,12,'#000','#ffffff','images/stars.jpg',1,'','')}}" />
{{@MY_IMG('http://site.com/img.png')}}

Генерация контента (L)

Используется для уникализации контента.

<panchenko count="X[,Y]">текст</panchenko>

Генерация по алгоритму Панченко от X до Y предложений, где текст - контент, но основе которого будет сгенерирован новый контент.
<panchenko count="15,20">текст</panchenko>

<markov count="X[,Y]">текст</markov>

Генерация с помощью цепей Маркова от X до Y предложений, где текст - контент, но основе которого будет сгенерирован новый контент.
<markov count="15,20">текст</markov>

<insert_to_text count="X[,Y]">текст</insert_to_text>

Вставляет в текст кейворд или ссылку на страницу согласно атрибутам:
insert="T", где "T" - тип:
- query - текущий запрос
- key - случайный кейворд
- key_href - случайный кейворд ссылкой
- map - ссылка из карты
- multi_map:название группы - ссылка из карты для случайного домена из указанной группы доменов.
Если группа не указана, то выведет случайную ссылку из карты случайного домена из любой группы.
Если прописать типы через запятую, то будет рандомная вставка из указанных типов.
cat="id_категории" - вставка кеев из нужной категории.
count="X[,Y]" - кол-во вставок, где X - от [Y - до]
parts="0" - разбить кей на слова (1 - да, 0 - нет)
tags="strong,u,i" - рандомные названия тегов через запятую, которые будут обрамлять вставки

Внимание! Вставляйте этот макрос на уже окончательно сгенерированный текст. То есть типа:
<insert_to_text count="2"><panchenko count="10">{{@DONOR_CONTENT(' ',10,15)}}</panchenko></insert_to_text>
но не наоборот!
<insert_to_text insert="query,key,key_href,map" count="1,3" parts="0" tags="strong,u,i">текст</insert_to_text>

Макросы новостей (N)

С помощью эти макросов можно выводить короткие новости и тд.

<full_news short_words="Z" />

<full_news short_words="Z"> текст </full_news>,
где текст - сгенерированный текст другим макросом, Z - кол-во слов, которое должно быть в короткой новости.

Если прописать макрос как в примере выше, то этот текст запишется в базу данных в виде короткой и полной новости.

Если в базе уже присутствует текст, то макрос выведет его.

Если прописать макрос так
<full_news />,
то он будет лишь выводить полную новость из базы, если она есть. Если полной новости в базе нет - ничего не выведет.
<full_news short_words="30">текст</full_news>

<short_news />

Выводит короткую новость из 30 слов, указанных в макросе <full_news short_words="30">

Макрос <short_news /> зависит напрямую от наличия в шаблоне макроса <full_news /> - если его нет, то <short_news /> ничего не выведет.

Он также ничего не выведет, если полная и короткая новость не разделена тегом <!--more-->
<short_news />

<user_data id="my_id" words="0" tags="1" />

Выведет пользовательские данные с меткой (id) my_id, где: words="0" - урезание контента до указанного кол-ва слов (0 - выводить весь текст), tags="1" - выводить контент с тегами или нет.

Можно прописать макрос так:
<user_data id="my_id">Контент</user_data>,
где Контент - любой сгенерированный динамически контент. Тогда в базу данных сохранятся пользовательские данные (Контент) с меткой my_id, и при генерации новой страницы этот Контент будет выведен.
<user_data id="my_id" words="0" tags="1" />

{{@USER_DATA('my_id')}}

Аналог макроса <user_data id="my_id" />.

Передаются параметры в следующем порядке:
id, text (если его нет, то макрос выведет существующие данные из базы), words, tags.

Пример 1:
{{@USER_DATA('my_id', '', 0, 1)}}
Пример 2:
{{@USER_DATA('my_id')}}
{{@USER_DATA('my_id', '', 0, 1)}}

<get_news>шаблон</get_news>

Вывод новостей из базы.
Поддерживает такие атрибуты:

count="X,Y" - от X [до Y] новостей;
related="1" - похожие новости для текущей новости;
cached="X" - где X:
  0 - выводить только НЕ закешированные новости,
  1 - выводить только закешированные новости,
  2 - выводить все новости.
  Значение по умолчанию - 1;
pagination="1" - указывает, что для эти новостей будет работать пагинация (см. ниже макрос <pagination />);
sort="Z" - сортировка новостей, где Z может быть таким:
  - date_desc - сортировка по дате по убыванию
  - date_asc - сортировка по дате по возрастанию
  - id_desc - сортировка по ID новости по убыванию
  - id_asc - сортировка по ID новости по возрастанию
sitemap="1" - выводить только те новости, ссылки на которые уже есть в карте сайта;
cat="X" - выводить новости из категорий, id которых X[,Y,... и тд];
  - Если прописать пустой атрибут cat="", то будет выводить новости, у которых категория не присвоена.
date="Z" - выводить новости, которые опубликованы Z:
  - day - за сегодняшний день
  - week - за неделю
  - month - за месяц
  - year - за год

Шаблон макроса <get_news /> поддерживает следующие макросы:
{KEY} - кейворд с маленькой буквы
{BKEY} - кейворд с большой буквы
{URL} - URL на новость
{POSTER_URL} - URL на постер для новости, скопированный макросом {URL_POSTER}image.jpg{/URL_POSTER} или <img_poster src="image.jpg" />
{META_DESCRIPTION} - meta_description новости
{TAGS_TITLE} - теги новости
{TAGS_HREF} - теги новости в виде ссылок
{SHORT_NEWS} - короткая новость
{FULL_NEWS} - полная новость
{DATE_CACHED('d.m.Y, H:i',-23)} - время кеширования новости и минус 23 часа и 23 минуты
  Вариатны написания макроса:
  - {DATE_CACHED('d.m.Y, H:i',-23)}
  - {DATE_CACHED('d.m.Y, H:i')}
  - {DATE_CACHED}
{USER_DATA-Z} - пользовательские данные, где Z - метка данных (или id), которые нужно вывести
{CATEGORY_ID} - id категорий через запятую, к которым принадлежит новость
{CATEGORY_ALT} - альтернативное имя категорий через запятую, к которым принадлежит новость
{CATEGORY_TITLE} - имена категорий через запятую, к которым принадлежит новость
{CATEGORY_HREF} - ссылки на категории через запятую, к которым принадлежит новость
{COMMENTS_COUNT} - кол-во комментариев в новости
{COUNTER} - число повторений макроса <get_news>

Пример:
<get_news count="5" cat="1,4">
<a href="{URL}" title="{KEY}">{BKEY}</a> ({DATE_CACHED('d.m.Y, H:i',0)}) <br>
{SHORT_NEWS}<br><br>
</get_news>


Выведет 5 новостей из категорий, id которых 1 и 4. Типа:
<a href="keyword.html" title="кейворд">Кейворд</a> (23.12.2016, 01:15) <br> Короткая новость<br><br>
...
<get_news count="5">
	<a href="{URL}" title="{KEY}">{BKEY}</a>
</get_news>

<pagination range="3" />

Выводит пагинацию новостей для макроса <get_news pagination="1" /> (в котором указан атрибут pagination="1"), где range="3" - область ссылок.
<pagination range="3" />

<page_tags href="1" />

Выведет теги в виде ссылок для текущей страницы.
Если не указать атрибут href, то выведет просто текстом.
<page_tags href="1" />

<img_poster src="image.jpg" />

<img_poster src="image.jpg" /> - запишет ссылку в базу данных как постер для новости и выведет в виде тега: <img src="image.jpg" />

Если прописать макрос так:
<img_poster />,
то он будет лишь выводить ссылку из базы данных.
<img_poster src="{{ @Q_IMAGES_URL_SMALL() }}" alt="" align="left" />

{URL_POSTER}image.jpg{/URL_POSTER}

Второй вариант записи URL картинки как постер для новости.
<q_images count="1" sepage="2" mark="X" rand="1">
	<a href="{URL_BIG}" class="image">
		<img src="{URL_POSTER}{URL_SMALL}{/URL_POSTER}" alt="{{ @SNIPP_TITLE() }}" align="left" />
	</a>
</q_images>

{{@DATE_CACHED('d.m.Y, H:i', -X)}}

Работает в шаблоне page.html и выводит дату кеширования страницы с учетом добавления или отнимания X-часов и X-минут, где d.m.Y, H:i - шаблон вывода даты (подробнее).
Пример:
{{@DATE_CACHED('d.m.Y, H:i', -23)}} выведет дату кеширования страницы и отнимет от нее 23 часа и 23 минуты (типа 04.10.2013, 02:52.
Можно просто написать так: {{@DATE_CACHED()}} - покажет дату и время кеширования страницы.
{{@DATE_CACHED('d.m.Y, H:i', -2)}}

Контент (Q)

Макросы парсинга текстовки по текущему поисковому запросу. То есть, например мы на этой странице http://mydor.com/smeshnoe-domashnie-video.html, значит текущий поисковый запрос "Смешное домашние видео"

{{@SNIPP_URL('Z',X,Y)}}

Выведет указанное кол-во случайных URL'ов на новые страницы, сгенерированные на основе Тайтлов из сниппетов.

Внимание! Использование данного макроса может привести к неконтролируемому добавлению новых страниц в базу данных!
{{@SNIPP_URL()}}

{{@SNIPP_TITLE('Z',X,Y)}}

Выведет указанное кол-во случайных Тайтлов из сниппета.
{{@SNIPP_TITLE(' ',1,3)}}

{{@SNIPP_DESCRIPTION('Z',X,Y)}}

Выведет указанное кол-во случайных предложений из сниппета.
{{@SNIPP_DESCRIPTION(' ',3,5)}}

{{@DONOR_CONTENT('Z',X,Y)}}

Выведет указанное кол-во случайных предложений из спарсенных сайтов-доноров.
{{@DONOR_CONTENT(' ',3,5)}}

<q_content>шаблон</q_content>

Парсинг текста по запросу.
Поддерживает такие атрибуты:

count="2,5" - от 2 [до 5] повторений шаблона;
sepage="1,2" - с какой страницы начать парсинг ПС;
donors="5" - кол-во доноров, которые нужно спарсить. Если не указать атрибут или 0, то доноры парсить не будет;
min_donors="3" - минимальное кол-во успешно спарсенных доноров;
query="запрос" - поисковый запрос. Если не указан, то будет текущий поисковый запрос;
mark="X" - метка макроса: если в шаблоне имеется несколько макросов <q_content /> и для них указаны одинаковые метки, то контент будет парсится один раз и распределяться на эти макросы.
Если метки разные или их вообще нет, то для каждого макроса будет отдельный парсинг;
rand="1" - перемешивать предложения или нет (1 - да, 0 - нет).

Шаблон макроса <q_content /> поддерживает внутри такие макросы:
  - {SNIPP_URL} - выведет случайный URL на новую страницу, сгенерированный на основе Тайтлов из сниппетов.
Внимание! Использование данного макроса может привести к неконтролируемому добавлению новых страниц в базу данных!
  - {SNIPP_TITLE} - выведет случайный Тайтл из сниппета;
  - {SNIPP_DESCRIPTION} - выведет случайное предложение из сниппета;
  - {DONOR_CONTENT} - выведет случайное предложение из спарсенных сайтов-доноров;

В свою очередь выше указанные {МАКРОСЫ} поддерживают следующие параметры:
  {МАКРОС-(X,Y)-(Z)-[metka[i]]}, где:
  X и Y - ОТ и ДО кол-ва контента;
  Z - разделитель (напр., <br> или " ");
  metka - любая метка, с помощью которой можно вывести одинаковые результаты {МАКРОСА};
  [i] - счетчик повторений шаблона <q_content />.
Любые параметры не обязательны.

Пример:
<q_content count="2,5" sepage="1,2" donors="5" min_donors="3" query="" mark="X" rand="0">
<a href="{SNIPP_URL-[title[i]]}" title="{SNIPP_TITLE-[title[i]]}">{SNIPP_TITLE-[title[i]]}</a><br>
<h4>{SNIPP_TITLE-[title[i]]}</h4> - {SNIPP_DESCRIPTION-(2)}
{DONOR_CONTENT-(2,5)}
</q_content>

<q_content count="2,5" sepage="2" donors="5" min_donors="3" query="" mark="X" rand="0">
	{DONOR_CONTENT-(1,3)}
</q_content>

Картинки (Q)

Макросы парсинга изображений по текущему поисковому запросу.

{{@Q_IMAGES_URL_SMALL('Z',X,Y)}}

Выведет указанное кол-во случайных URL'ов на уменьшеные копии спарсенных изображений.
{{@Q_IMAGES_URL_SMALL()}}

{{@Q_IMAGES_URL_BIG('Z',X,Y)}}

Выведет указанное кол-во случайных URL'ов на полные копии спарсенных изображений.
{{@Q_IMAGES_URL_BIG()}}

<q_images>шаблон</q_images>

Парсинг картинок по запросу.
Поддерживает такие атрибуты:
count="2,5" - от 2 [до 5] повторений шаблона;
sepage="1,2" - с какой страницы начать парсинг ПС;
query="запрос" - поисковый запрос. Если не указан, то будет текущий поисковый запрос;
mark="X" - метка макроса: если в шаблоне имеется несколько макросов <q_images /> и для них указаны одинаковые метки, то контент будет парсится один раз и распределяться на эти макросы.
Если метки разные или их вообще нет, то для каждого макроса будет отдельный парсинг;
rand="1" - перемешивать результаты парсинга или нет (1 - да, 0 - нет).
Атрибуты фитров изображений:
brightness="0" - Adjust brightness (range:-255 to 255)
contrast="0" - Adjust contrast (range:-100 to 100)
invert="0" - Invert image (0 or 1)
gray="0" - Convert to grayscale (0 or 1)
smooth="0" - Adjust smoothness (range: -8 to 8, but as its been used for a matrix operation, greater values are applyable too, but may lead to unusable results.)
emboss="0" - Emboss the image (0 or 1)
sepia="0" - Apply sepia effect (0 or 1)
pixelate="0" - Pixelate the image (range: 0 - 100)
blur="0" - Blur the image using Gaussian filter (0 or 1)
sketch="0" - Apply sketch effect (0 or 1)
hflip="0" - Flip on horizontal axis (0 or 1)
vflip="0" - Flip on vertical axis (0 or 1)
rotate="0" - Rotate image (range:-180 to 180)

Шаблон макроса <q_images /> поддерживает внутри такие макросы:
  - {URL_SMALL} - URL на уменьшенную копию изображения;
  - {URL_BIG} - URL на полную копию изображения;

Пример:
<q_images count="5" sepage="1" query="" mark="X" rand="1">
<a href="{URL_BIG}"><img src="{URL_SMALL}" alt="" /></a><br>
</q_images>

<q_images count="5" sepage="1" query="" mark="X" rand="1" brightness="0" contrast="0" invert="0" gray="0" smooth="0" emboss="0" sepia="0" pixelate="0" sketch="0" hflip="0" vflip="0" rotate="0">
	<img src="{URL_SMALL}" alt="" />
	<br>
</q_images>

Видео (Q)

Макросы парсинга видео по текущему поисковому запросу.

{{@Q_VIDEO_URL('Z',X,Y)}}

Выведет URL на новую страницу, сгенерированный на основе Названия видео.
Внимание! Использование данного макроса может привести к неконтролируемому добавлению новых страниц в базу данных!
{{@Q_VIDEO_URL()}}

{{@Q_VIDEO_HREF('Z',X,Y)}}

Выведет ссылку на новую страницу, сгенерированную на основе Названия видео.
Внимание! Использование данного макроса может привести к неконтролируемому добавлению новых страниц в базу данных!
{{@Q_VIDEO_HREF('<br>',3,5)}}

{{@Q_VIDEO_TITLE('Z',X,Y)}}

Выведет Название видео.
{{@Q_VIDEO_TITLE(' ',3,5)}}

{{@Q_VIDEO_DESCRIPTION('Z',X,Y)}}

Выведет описание видео (если есть).
{{@Q_VIDEO_DESCRIPTION(' ',3,5)}}

{{@Q_VIDEO_POSTER('Z',X,Y)}}

Выведет оригинальный URL на постер из видео.
{{@Q_VIDEO_POSTER()}}

{{@Q_VIDEO_POSTER_SMALL('Z',X,Y)}}

Выведет URL на уменьшенное изображение постера из видео.
{{@Q_VIDEO_POSTER_SMALL()}}

{{@Q_VIDEO_POSTER_BIG('Z',X,Y)}}

Выведет URL на полное изображение постера из видео.
{{@Q_VIDEO_POSTER_BIG()}}

{{@Q_VIDEO_EMBED('Z',X,Y)}}

Видео-плеер Сервиса.
{{@Q_VIDEO_EMBED()}}

{{@Q_VIDEO_MY_EMBED('Z',X,Y)}}

Видео-плеер Uppod. Поддерживаются только YouTube и RuTube - для других парсеров данный макрос эквивалентен макросу {{@Q_VIDEO_EMBED}}.
{{@Q_VIDEO_MY_EMBED()}}

<q_videos>шаблон</q_videos>

Парсинг видео по запросу.
Поддерживает такие атрибуты:
count="2,5" - от 2 [до 5] повторений шаблона;
sepage="1,2" - с какой страницы начать парсинг ПС;
query="запрос" - поисковый запрос. Если не указан, то будет текущий поисковый запрос;
mark="X" - метка макроса: если в шаблоне имеется несколько макросов <q_images /> и для них указаны одинаковые метки, то контент будет парсится один раз и распределяться на эти макросы.
Если метки разные или их вообще нет, то для каждого макроса будет отдельный парсинг;
rand="1" - перемешивать результаты парсинга или нет (1 - да, 0 - нет).

Шаблон макроса <q_content /> поддерживает внутри такие макросы:
  - {VIDEO_URL} - выведет URL на новую страницу, сгенерированный на основе Названия видео;
  - {VIDEO_HREF} - выведет ссылку на новую страницу, сгенерированную на основе Названия видео.
Внимание! Использование макросов {VIDEO_URL} и {VIDEO_HREF} может привести к неконтролируемому добавлению новых страниц в базу данных!
  - {VIDEO_TITLE} - выведет Название видео;
  - {VIDEO_DESCRIPTION} - выведет описание видео (если есть);
  - {VIDEO_POSTER} - выведет оригинальный URL на постер из видео;
  - {VIDEO_POSTER_SMALL} - выведет URL на уменьшенное изображение постера из видео;
  - {VIDEO_POSTER_BIG} - выведет URL на полное изображение постера из видео;
  - {VIDEO_EMBED} - видео-плеер Сервиса;
  - {MY_EMBED} - видео-плеер Uppod. Поддерживаются только YouTube и RuTube - для других парсеров данный макрос эквивалентен макросу {VIDEO_EMBED}.

Пример:
<q_videos count="1" sepage="2" query="" mark="X" rand="1">
{MY_EMBED} </q_videos>

<q_videos count="1" sepage="2" query="" mark="X" rand="0">
	{MY_EMBED}
</q_videos>

Служебные (S)

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

{{@HOST}}

Домен сайта: site.ru
{{@HOST}}

{{@S_DOR_URL}}

Url к папке дора: http://site.ru/dor1/
{{@S_DOR_URL}}

{{@S_RSS_URL}}

Url на RSS-ленту дора: http://site.ru/rss/
{{@S_RSS_URL}}

{{@S_SITEMAP_URL}}

URL на карту сайта
{{@S_SITEMAP_URL}}

{{@S_TEMPL}}

Путь к текущему шаблону my_template/
{{@S_TEMPL}}

{{@S_CAT_ID}}

ID текущей категории
{{@S_CAT_ID}}

{{@S_CAT_TITLE}}

Название текущей категории
{{@S_CAT_TITLE}}

{{@S_CAT_ALT}}

Альтернативное имя текущей категории
{{@S_CAT_ALT}}

{{@S_CAT_HREF}}

Ссылка на текущую категорию
{{@S_CAT_HREF}}

{{@S_CAT_BREADCRUMBS}}

Хлебные крошки из категорий
{{@S_CAT_BREADCRUMBS}}

{{@S_PAGE_CAT_ID}}

Все ID категорий через запятую, принадлежащие к текущей новости
{{@S_PAGE_CAT_ID}}

{{@S_PAGE_CAT_ALT}}

Все альтернативные имена категорий через запятую, принадлежащие к текущей новости
{{@S_PAGE_CAT_ALT}}

{{@S_PAGE_CAT_TITLE}}

Все названия категорий через запятую, принадлежащие к текущей новости
{{@S_PAGE_CAT_TITLE}}

{{@S_PAGE_CAT_HREF}}

Все ссылки на категории через запятую, принадлежащие к текущей новости
{{@S_PAGE_CAT_HREF}}

<s_include href="file.txt" />

Выведет содержимое файла file.txt
Эквивалент функции на PHP file_get_contents("file.txt")
В шаблоне можно прямо так и прописать эту функцию:
{{file_get_contents("file.txt")}}
<s_include href="file.txt" />

<meta_keywords />

Выведет тег <meta name="keywords" content="кейворды, для, страницы" />
<meta_keywords />

<meta_description />

Выведет тег <meta name="description" content="Описание для страницы" />
<meta_description />

<liveinternet />

Выведет универсальный код невидимого счетчика liveinternet.ru
Рекомендуется вставлять этот макрос в шаблоне сразу после тега <body>
<liveinternet />

stats_code

Код невидимого счетчика модуля Статистики.
Этот код нужно вставить во все шаблоны сразу после тега <body>
<script type="text/javascript">
	var q = '{{str_replace(array('/', '+'), array('_', '-'), base64_encode(@L_QUERY))}}',
	js = document.createElement('script');
	js.type = 'text/javascript';
	js.src = "{{@BASE}}{{Stats::instance()->slog}}?"+Math.random();
	document.body.appendChild(js);
</script>

<menu_cats />

Выведет меню из категорий. Поддерживает любые HTML-атрибуты, а также следующие:

li_class_active="active", где active - любое имя css-класса, которое будет присваиваться активной категории;
first_link="{{@S_DOR_URL}},Главная" - встроит в меню первую ссылку, где {{@S_DOR_URL}} и Главная - URL и анкор соответственно;
last_link="{{@S_SITEMAP_URL}},Карта" - встроит в меню последнюю ссылку, где {{@S_SITEMAP_URL}} и Карта - URL и анкор соответственно.

Выведет что-то типа:
<ul>
<li>Категория 1</li>
<li>Категория 2</li>
</ul>

Если имеются подкатегории, то меню так же будет вложенным.
<menu_cats class="navbar cf" li_class_active="active" first_link="{{@S_DOR_URL}},Главная" last_link="{{@S_SITEMAP_URL}},Карта" />

Карта сайта (M)

Макросы для шаблона карты сайта (sitemap.html). В шаблоне также поддерживаются и другие макросы доргена.

{{@page}}

Номер страницы карты сайта
{{@page}}

{{@links|raw}}

Список ссылок на закешированные страницы сайта
{{@links|raw}}

{{@pagination|raw}}

Пагинация для карты сайта
{{@pagination|raw}}

Поиск и теги (T)

Макросы для шаблонов поиска (search.html) и тегов (tags.html). В шаблонах также поддерживаются и другие макросы доргена.

<search_result>шаблон</search_result>

Выведет из базы данных новости соответствующие запросу поиска или тега.

Шаблон макроса <get_news /> поддерживает следующие макросы:
{KEY} - кейворд с маленькой буквы
{BKEY} - кейворд с большой буквы
{URL} - URL на новость
{META_DESCRIPTION} - meta_description новости
{TAGS_TITLE} - теги новости
{TAGS_HREF} - теги новости в виде ссылок
{SHORT_NEWS} - короткая новость
{FULL_NEWS} - полная новость
{DATE_CACHED('d.m.Y, H:i',-23)} - время кеширования новости и минус 23 часа и 23 минуты
  Вариатны написания макроса:
  - {DATE_CACHED('d.m.Y, H:i',-23)}
  - {DATE_CACHED('d.m.Y, H:i')}
  - {DATE_CACHED}
{USER_DATA-Z} - пользовательские данные, где Z - метка данных (или id), которые нужно вывести
{CATEGORY_ID} - id категорий через запятую, к которым принадлежит новость
{CATEGORY_ALT} - альтернативное имя категорий через запятую, к которым принадлежит новость
{CATEGORY_TITLE} - имена категорий через запятую, к которым принадлежит новость
{CATEGORY_HREF} - ссылки на категории через запятую, к которым принадлежит новость
{COMMENTS_COUNT} - кол-во комментариев в новости
{COUNTER} - число повторений макроса <get_news>

Пример:
<search_result>
<p><a href="{URL}">{BKEY} <p style="padding-bottom:10px">
<a href="{URL}"><img src="{POSTER_URL}" alt="{KEY}" title="{KEY}" align="left" /></a> {SHORT_NEWS}...
</p>
</search_result>

<search_result>
	<p>
		<a href="{URL}">{BKEY}</a></p><p style="padding-bottom:10px"><a href="{URL}">
			<img src="{POSTER_URL}" alt="{KEY}" title="{KEY}" align="left" />
		</a>
		{SHORT_NEWS}...
	</p>
</search_result>

{{@pagination|raw}}

Пагинация для результатов поиска
{{@pagination|raw}}

Страницы ошибок (E)

Макросы для шаблона ошибок 403, 404 и 500 (error.html). В шаблоне также поддерживаются и другие макросы доргена.

{{@ERROR.code}}

Код ошибки
{{@ERROR.code}}

{{@ERROR.status}}

Статус ошибки
{{@ERROR.status}}

{{@ERROR.text}}

Текст ошибки
{{@ERROR.text}}

{{@ERROR.trace|raw}}

Источник ошибки (он не будет выводиться при отключенной опции вывода отладочной информации).
{{@ERROR.trace|raw}}

Макросы F3

Дополнительно в шаблонах можно использовать макросы Fat-Free Framework. Описания макросов смотрите на официальном сайте.