Ключи - PandoraBox

advertisement
PandoraBox 2.18
Мануал по макросам и блокам
Оглавление
Кодировка файлов .......................................................................................................................................4
Отложенная публикация.............................................................................................................................4
Категории .....................................................................................................................................................5
Ключи............................................................................................................................................................6
Режим MULTIKEY..........................................................................................................................................7
Постоянные данные ....................................................................................................................................8
Случайные данные ......................................................................................................................................9
Сложные макросы и блоки .......................................................................................................................10
Перелинковка ............................................................................................................................................12
Случайные файлы и строчки .....................................................................................................................14
Одноразовые макросы .............................................................................................................................16
Динамический текст ..................................................................................................................................16
Статический текст ......................................................................................................................................17
Макросы имен файлов..............................................................................................................................17
Картинки .....................................................................................................................................................18
Синонимизация .........................................................................................................................................19
Пользовательские макросы......................................................................................................................20
Менеджер и редактор пользовательских макросов ..............................................................................20
Макросы пакетного задания ....................................................................................................................21
Теги карты. Блок {MAP}{/MAP} .................................................................................................................21
Теги главной страницы. Блок {MAIN}{/MAIN} .........................................................................................22
Теги страницы поста. Блок {POST}{/POST} ...............................................................................................22
Теги страницы категории. Блок {CAT}{/CAT} ............................................................................................24
Теги комментариев. Блок {COMMENTS}{/COMMENTS} ..........................................................................24
Robots.txt ....................................................................................................................................................25
Sitemap .......................................................................................................................................................25
RSS ...............................................................................................................................................................25
Статические страницы...............................................................................................................................26
Алгоритмы генерации текста ...................................................................................................................26
Марковка................................................................................................................................................26
Текст как есть .........................................................................................................................................27
По предложению из всех файлов ........................................................................................................27
Панченко – стыковка по запятым.........................................................................................................27
Маркс ......................................................................................................................................................27
Dos3 – стыковка по запятым .................................................................................................................27
Syntax – синтаксический разбор ..........................................................................................................28
Tuning.txt - файла тюнинга ........................................................................................................................28
Консольный запуск ....................................................................................................................................29
Разные файлы ключей для каждой категории .......................................................................................30
Разные файлы текста для каждой категории ..........................................................................................30
Изменение произвольного параметра в пакетном режиме .................................................................31
Функция «запуск по завершению» ..........................................................................................................32
Разделение пакетного задания на части .................................................................................................32
Авто сабдомены ........................................................................................................................................33
Проекты Xrumer .........................................................................................................................................33
Проекты Xrumer в пакетном режиме ..................................................................................................34
Плагины ......................................................................................................................................................34
Генератор расписаний для Xrumer ......................................................................................................34
Пакетное добавление доменов в ISP панель ......................................................................................35
Пинг при отложенной публикации ..........................................................................................................36
Проверка макросов шаблона ...................................................................................................................36
Автораспределение ключей по категориям ...........................................................................................37
Уникализация CSS стилей в файлах стилей и файле шаблона ..............................................................37
Автогенерация пакетных заданий ...........................................................................................................38
Схемы перелинковки сайтов при пакетной обработке..........................................................................39
Клоакинг .....................................................................................................................................................40
Кодировка файлов
Все файлы для программы должны быть в кодировке – CP1251 или UTF8. Эти файлы:

Текстовка

Ключи

Каты

Комментарии

Ники

Файл шаблона

Все подгружаемые файлы из макросов RANDLINE и подобных
Если нужно использовать на входе кодировку UTF8, то все перечисленные файлы перекодировать
в UTF8, затем открыть файл tuning.txt и в нем раскомментировать параметр //UTF8Sources=1
Отложенная публикация
Для использования – поставить галочку в программе и указать начальное публикуемое кол-во
постов(в дальнейшем - НПКП) в процентах. Например 10% - 20% сайта будет доступно сразу.
Исходя из текущей даты, НПКП и периода публикации (разброс дат в днях) можно определить
начальную дату публикации, поэтому начальная дата публикации блокируется при включении
режима отложенных публикаций.
Ссылки на посты в категориях и сами посты будут появляться в соответствии с графиком
публикации. Комментарии в постах также будут появляться со временем. Облако тэгов
рассчитывается заново при появлении +1 поста. В карте будут добавляться ссылки на посты. В
sitemap.php также будут добавляться элементы. Публикация постов отталкивается от времени на
сервере.
Все страницы сайта должны обрабатываться через php, поэтому расширение страниц меняется на
php. (но не блокируется на случай перенаправления обработчика других расширений на php через
.htaccess). Каждая страница будет инклудить файл delayedlinks.php, в который помещается график
публикации, и в котором лежат функции отложенной публикации. Файл delayedlinks.php можно
изменить на свое усмотрение.
Не забудьте переименовать статические страницы в php. Например, about.html -> about.php
Из требований – только php расширение страниц (или перенаправление других расширений на
php обработчик через .htaccess). Никаких баз данных или cron не нужно.
Существует макрос отложенного по времени вывода:
{SCHEDULE-21.01.2010 12:00}Это отобразиться после 21.01.2010 12:00{/SCHEDULE}
{SCHEDULE-3-5}Это отобразиться через 3-5 дней после генерации{/SCHEDULE}
{SCHEDULE-3-5/a}Это отобразиться через 3-5 дней после публикации страницы{/SCHEDULE}
{SCHREPEAT-2-4-3-5}...{/SCHREPEAT} - макрос отложеных повторений. 2..4 поста с промежутком 3..5
дней между ними. Первый отложенный блок появится тоже через 3..5 дней.
Дополнительные макросы специально для режима отложенной публикации:
{ANNOUNCEKEYWORD}…{/ANNOUNCEKEYWORD}
{ANNOUNCEMULTIKEYWORD}…{/ANNOUNCEMULTIKEYWORD}
описаны в разделе «Перелинковка»
Категории
[CATS] — список ссылок категорий в ненумерованном списке <ul><li><li></ul>. Все каты сайта
[NOULCATS] — такой же как и [CATS], но без <ul></ul>
[CAT] - название категории для текущей страницы
[CATLINK] - ссылка на текущую категорию для текущей страницы
[CATURL] - урл текущей категории без анкора для текущей страницы
[CAT-3] - название из списка категорий, 3 - номер строчки категорий
[CATLINK-3] - ссылка на категорию 3
[CATURL-3] - урл категории 3 (для создания например ссылки <a href=”[CATURL-3]“><img
src=”[SITE]/images/[RAND-1-40].jpg”></a>)
[RANDCAT] - имя рандомной категории
[RANDCATURL] - урл рандомной категории
[RANDCATLINK] — ссылка рандомной категории
{PUNIQRANDCAT}<a href="[URL]">[ANCHOR]</a>{/PUNIQRANDCAT} - шаблон вывода рандомной,
уникальной в пределах страницы, категории
[CATRANDPOST] - название рандомной страницы текущей категории
[CATRANDPOSTURL] - урл рандомной страницы текущей категории
[CATRANDPOSTLINK] - ссылка рандомной страницы текущей категории
{CATRANDPOST} <a href="[URL]">[ANCHOR] – анкор ссылки или
[BANCHOR] – анкор с большой буквы или
[BBANCHOR] – анкор, где все буквы большие или
[BBBANCHOR] – анкор, где первые буквы каждого слова большие
[TANCHOR] – анкор транслитом</a>
{/CATRANDPOST} - универсальный шаблон вывода рандомной ссылки текущей категории
{CATRANDPOST-3} <a href="[URL]">[ANCHOR] – анкор ссылки или
[BANCHOR] – анкор с большой буквы или
[BBANCHOR] – анкор, где все буквы большие или
[BBBANCHOR] – анкор, где первые буквы каждого слова большие
[TANCHOR] – анкор транслитом</a>
{/CATRANDPOST} - универсальный шаблон вывода рандомной ссылки указанной категории
{CATRANDPOST-Название категории}…{/CATRANDPOST} – аналогичен {CATRANDPOST-3}, но
категория задается по названию
{EVERYCAT}…{/EVERYCAT} – блок формирования списка категорий в произвольном формате.
Вложенные макросы:
 [EVERYCAT] – название категории
 [EVERYCATURL] – урл категории.
 [ECUNIQLINE-(lines.txt)] – уникальная в пределах данной конструкции строчка
Пример: <ul>{EVERYCAT}<li><a class="cat_li" href="[EVERYCATURL]">Категория [EVERYCAT] [ECUNIQLINE-(lines.txt)]</li>{/EVERYCAT}</ul>
Ключи
[KEYWORD] — вставляет текущий ключ
[KEYWORDURL] — вставляет урл текущего ключ
[BKEYWORD] — текущий ключ с Большой буквы
[TKEYWORD] — текущий ключ в транслите
[URLKEYWORD] — url кодированный текущий ключ
[BBKEYWORD] — текущий ключ с БОЛЬШИМИ буквами
[BBBKEYWORD] — Текущий Ключ С Большими Буквами Каждого Слова
[RANDKEYWORD] — случайный кейворд
[PLUSKEYWORDS] — Текущий ключ, где вместо пробелов знак плюса. Для отправки на PPC и/или
вставки в gFEED.
[KEYWORDS] — вставляет ключи страницы(если ключей >1 на страницу, то через запятую)
[BKEYWORDS] — вставляет ключи страницы(если ключей >1 на страницу, то через запятую) с
большой буквы
{KEYWORDS-3}..<b>..[KEY]..</b>..{/KEYWORDS} - вставляет указанный по номеру ключ(если ключей
>1 на страницу). Место вывода ключа обозначено подмакросом [KEY]. Если ключей на странице
меньше трех, то ничего выведено не будет.
[BBRANDKEYWORD] — вставляет ключи страницы(если из >1 на страницу, то через запятую) с
БОЛЬШИМИ буквами
[TRANDKEYWORD] — случайный ключ транслитом
[BRANDKEYWORD] - случайный ключ с Большой буквы
[MIXKEYWORD] - вставляет текущий ключ с перемешанными словами (слова перемешиваются
случайным образом).
[BMIXKEYWORD] - вставляет текущий ключ с большой буквы, с перемешанными словами (слова
перемешиваются случайным образом).
[KEY-0-2-KEY-1-3] – ключ, обрамленный словами 0-2 спереди, 1-3 сзади
[BKEY-0-2-KEY-1-3] – ключ, обрамленный словами 0-2 спереди, 1-3 сзади с большой буквы
[MIXKEY-0-2-KEY-1-3] – ключ, обрамленный словами 0-2 спереди, 1-3 сзади, слова помешаны
[BMIXKEY-0-2-KEY-1-3] – ключ, обрамленный словами 0-2 спереди, 1-3 сзади с большой буквы,
слова помешаны
[RANDKEY-1-3-KEY-2-4] – случайный ключ, обрамленный словами 0-2 спереди, 1-3 сзади
[BRANDKEY-1-3-KEY-2-4] – случайный ключ, обрамленный словами 0-2 спереди, 1-3 сзади с
большой буквы
[INDEXKEY] – ключ главной страницы, применить можно так: <a href=”[SITE]”> [INDEXKEY]</a>
{CASE-4}[KEYWORD]{/CASE} – макрос склонения ключа. Пример:
"Купить {CASE-4}красивая палка для селфи{/CASE}" выдаст "Купить красивую палку для селфи".
Падежи: 1 - Именительный(Кто? Что?); 2 - Родительный(Кого? Чего?); 3 - Дательный(Кому?
Чему?); 4 - Винительный(Кого? Что?); 5 - Творительный(Кем? Чем?); 6 - Предложный(О ком? О
чём?)
Режим MULTIKEY
Режим MULTIKEY – это механизм вставки ключей, при котором в файле ключей находятся в
каждой строке несколько подключей, разделенных точкой с запятой. Обычно файл ключей
выглядит так:
Ученик чародея
Дневник лесбиянки
Взрослая дочь или Тест на...
Челси со льдом
Подсадной
Альфа и Омега
Ночные стражи
А в режиме MULTIKEY файл ключей дожжен выглядеть так:
Ученик чародея;5000000USD;Режиссер Иванов;США
Дневник лесбиянки;35000000$;Режиссер Сидоров;Россия
Взрослая дочь или Тест на...;15000000р;Режиссер Тайсон;Мытище
Челси со льдом;15гривн;Режиссер Петров;Украина
Подключи могут быть выведены макросом [KEYPART-1], [KEYPART-2],... или [KEYPART-RANDOM]
Как уже показано на примере ключей, данным механизмом можно вывести на страницах сайта
например название фильма, режисера, бюджет и т.д.
При вставке ключей в текст нет смысла вставлять весь составной ключ, поэтому в программе
можно указать номер подключа для вставки в текст(в том числе и случайный).
[KEYPART-2] – подключ номер 2
[KEYPART-RANDOM] – случайный подключ текущего ключа
[KEYPART-URANDOM] – случайный подключ текущего ключа, уникальный для страницы
Для генерации случайной ссылки внутри блока {RANDKEYWORD} можно использовать части с
помощью макроса [PART-2] – даст подключ номер 2. Пример: {RANDKEYWORD}<a
href="[URL]">[PART-1]. Бюджет – [PART-2]</a>{/RANDKEYWORD}
Также можно применять подключи в поле «Название папок категорий» и в поле «Название папок
страниц». В случае указания его в поле "Название папок категорий" ключи будут автоматически
распределены по категориям. Подробнее в разделе «Макросы имен файлов».
Дополнительные макросы специально для режима MULTIKEY:
{RANDMULTIKEYWORD}…{/RANDMULTIKEYWORD}
{EXTMULTIKEYWORD}…{/EXTMULTIKEYWORD}
{ANNOUNCEMULTIKEYWORD}…{/ANNOUNCEMULTIKEYWORD}
описаны в разделе «Перелинковка»
Постоянные данные
[SITE] — абсолютный путь сайта, например http://www.door.ru
[HOST] — имя домена сайта, например www.door.ru
[MAP] — урл карты сайта
[RSS] — фид сайта
[TAGS-5] — облако тэгов из 5 рандомных кейвордов
[TAGS-5-10] — облако тагов из 5-10 рандомных кейвордов
[COUNTER] — счетчик из поля «Счетчик»
[COUNTERFILE] — счетчик из файла, имя которого указано на закладке "Настройки макросов" в
программе. Например, если указать counter1.txt в программе и поставить макрос, то программа
попытается вставить в шаблон содержимое файла data\files\counter1.txt
[CUSTOM] – произвольный текст, например вставка js фрейма. Можно проставить его сразу под
<body>
[TDSID] – произвольный текст, например ссылка на партнерку.
[HTMLCHARSET] — текущая выбранная кодировка. windows-1251 или uft-8
[PACKITEMNUM] - номер генерации в пакетном задании с учетом разделения пакетного задания
тегом -next[TOTALPACKITEMNUM] - номер генерации в пакетном задании без учета разделения пакетного
задания тегом -next-
Случайные данные
[RAND-1-10] — случайное число (например [RAND-1-26])
[URAND-1-10] — случайное число (например [RAND-1-26]), в пределах 1 страницы не повторяется
[RANDSTRING-(буквыqwerty)-11] - рандомная строка указанной длинны из указанных букв
[RANDWORDS-1-2] – несколько слов из текстовки. Можно юзать внутри блока {RANDKEYWORD} для
разбавления анкора.
[MONTH] - рандомный месяц вида: 05.2010
[RANDDATE] – случайная дата от начальной даты в течении выбранного периода
[RANDDATE-(10.02.2011)-(10.03.2011)] – случайная дата в указанном диапазоне
[RANDTIME-(10:10)-(23:50)] – случайное время в указанном диапазоне
[RANDTIMEFORMAT-(F)] — дата поста указанного формата. Примеры форматирования
http://msdn.microsoft.com/ru-ru/library/az4se3k1(v=vs.90).aspx
[RANDTIMEFORMAT-(F)-(fr)] — дата поста указанного формата и на нужном языке
[DATE] —дата поста вида 01.12.2010
[TIMEFORMAT-(U)] — дата поста указанного формата
[TIMEFORMAT-(U)-(en)] — дата поста указанного формата и на нужном языке
[ETAD] —дата поста вида 2010-12-01
[DATETIME-( в )] – дата и время поста, разделенные « в », например 01.08.09 в 11:32
[DATE-1] — рандомная дата, где 1 - номер даты (например [DATE-2] будет вставлять везде
одинаковую дату в пределах одной страницы)
[N] — номер страницы
[NICK] — рандомный ник
[NICKS-1-10] — 1-10 рандомных ников через запятую
[TITLE] — данные из поля "TITLE страниц"
[DESCRIPTION] – 1-3 предложения выбранной генерации без тегов
[|привет|здрасте|] – вставляется рандомный текст из указанных. Можно использовать макросы.
Поддерживается многострочная запись и вложенность:
[|
[macro1]
|
[|
[|[macro2a]|[macro2b]|]
|
[macro22]
|]
|
[macro3]
|]
{VARIANT-3-5}..[NICK]..{/VARIANT} – макроблок динамических вариаций. На каждый рефреш
страницы будет показан один из 3..5 вариантов внутренних макросов. Только для php.
[GLASSOGLAS-7-9] – гласные, согласные, например derytuli. От 7 до 9 символов
Сложные макросы и блоки
{REPEAT-2-4}ГИП ГИП УРА!<br/>{/REPEAT} – 2-4 раза будет повторен внутренний текст, можно
использовать макросы. Количество повторений будет меняться на страницах. Внутри можно
поместить спец.макрос [I], который заменится на номер итерации: 1,2,3..
{REPEATEXT-2-4}ГИП ГИП УРА!<br/>{/REPEATEXT} – макрос, аналогичный {REPEAT}, но
поддерживающий вставку самого в себя и как следствие - более медленный
{SREPEAT-2-4}ГИП ГИП УРА!<br/>{/SREPEAT} – Макросы внутри будут динамичны, но количество
повторений будет статично.
{PROB-50%}html html html{/PROB} – с вероятностью 50% будет вставлено содержимое макроблока.
{SPROB-50%}ГИП ГИП УРА!<br/>{/SPROB} – Макросы внутри будут динамичны, но вероятность
будет статичной.
{PROBLIST}{PROB-30%}вероятность этой строки 30%{/PROB}{PROB-70%}вероятность этой строки
70%{/PROB}{/PROBLIST} – Список блоков с разной вероятностью. У каждого блока своя
вероятность, выбирается только 1 блок. И так для каждой страницы. Макроблок поддерживает
вложенность самого в себя.
{SPROBLIST}{PROB-30%}вероятность этой строки 30%{/PROB}{PROB-70%}вероятность этой строки
70%{/PROB}{/SPROBLIST} – Список блоков с разной вероятностью. У каждого блока своя
вероятность, выбирается только 1 блок. И выбор этот делается не для каждой страницы, а 1 раз на
весь сайт.
{REPLACEMENT-( )-(; )}[KEYWORD]{/REPLACEMENT} – замена во внутреннем тексте. В ключе будут
сделаны замены « » на «; » и получится из «самый лучший ключ» - «самый; лучший; ключ».
Поддерживается вложенность макроса друг в друга. Макрос поддерживает одну * в начале или в
конце искомой строки, например: {REPLACEMENT-(* тут!)-()}[TITLE]{/REPLACEMENT}
{REGREPLACE-(ск.+?чать)-(скачать)}[KEYWORD]{/REGREPLACE} – аналогичен предыдущему, но
замена во внутреннем тексте производится по регулярному выражению. Для пользователей,
знакомых с регулярными выражениями.
{STAT}[KEYWORD]<br>[TEXT]{/STAT} – Макроблок статики. Все макросы внутри этого блока статичны, то есть выполняются 1 раз на весь сайт.
{STAT-n}[KEYWORD] [RAND-1-100]... {/STAT} – Пронумерованный макроблок статики. Аналогичен
предыдущему, но результат его выполнения можно повторно отобразить несколько раз макросом
[STATRES-n].
{MEM-n}[KEYWORD] [RAND-1-100]... {/MEM} – Макрос повтора (копипаст;copy/paste) в пределах 1
страницы. Внутреннее содержимое блока запоминается под указанным номером, а отобразить
еще раз макросом [MEMRES-n]. Пример:
<a href="http://site.com/big/{MEM-1}[RAND-1-2350].jpg{/MEM}" class="highslide"><img src="http://site.com/small/[MEMRES-1]"
alt="[RANDKEYWORD]" /></a>
{SCHEDULE-21.01.2010 12:00}Это отобразиться после 21.01.2010 12:00{/SCHEDULE} Только для
отложенной публикации.
{SPLIT-(X)-(;)}...{/SPLIT} - делит внутренний текст на части указанным разделителем ; и запоминает
под указанным именем X. Можно применять в связке с [RANDLINE-(video.txt)], например, так:
{SPLIT-(X)-(;)}[RANDLINE-(video.txt)]{/SPLIT}. Ничего не вставляет в страницу, для вывода нужно
использовать макросы [SPLITRES-...], описанные ниже.
[SPLITRES-(X)-1] - показывает 1 фрагмент строчки X, [SPLITRES-(X)-2] - показывает 2 фрагмент
строчки X и т.д.
[SPLITRES-(X)-RND] – показывает рандомный фрагмент строчки X
[SPLITRES-(X)-MIX] - показывает все фрагменты строчки X, но выводит их с перемешиванием
[SPLITRES-(X)-MIXSPACE] - показывает все фрагменты строчки X, но выводит их с перемешиванием
через пробел
{UPPERCASE}макросы{/UPPERCASE} – ПРИВЕДЕНИЕ ВСЕГО ВНУТРЕННЕГО ТЕКСТА К ВЕРХНЕМУ
РЕГИСТРУ
{LOWERCASE}макросы{/LOWERCASE} – приведение всего внутреннего текста к нижнему регистру
{TITLECASE}макросы{/TITLECASE} – Приведение Всего Внутреннего Текста К Title Регистру.
{CAPCASE}текст{/CAPCASE} – Приведение первой буквы внутреннего текста к верхнему регистру.
{TRANSLIT}любые макросы{/TRANSLIT} – Транслитерация внутреннего текста блока
{MIX}Текст1. Текст2.{/MIX} – Перемешивание предложений внутреннего текста блока
{CAPITCASE}макросы{/CAPITCASE} – Приведение первой буквы внутреннего текста к верхнему
регистру для ссылок. Если внутренний текст содержим теги, например это ссылка, то приведение к
верхнему регистру выполняется для анкора. <a href=’ссылка’>Анкор</a>
{ONEPOS-n}…[CATS]... {/ONEPOS} – Пронумерованный макроблок html кода для вставки в
рандомное место шаблона. Таким блоком можно вывести, например, меню сайта в рандомном
месте. Для указания второй, третей и остальных позиций нужно использовать [ONEPOS-n] .
Пример:
{ONEPOS-5}<li id="categories" class="widget widget_categories"><h2 class="widgettitle">Разделы</h2>[CATS]</li>{/ONEPOS}… [ONEPOS-5] …
[ONEPOS-5], тут первый блок задает состав блока, а все последующие – вероятные места
{REPLACEBLOCK-n} ... {/REPLACEBLOCK} - Размечаем кусок шаблона вне блоков, а потом внутри
блоков MAIN, CAT, POST, MAP переопределяем его макросом {REPLACECONTENT-n} ...
{/REPLACECONTENT}.
Пример:
{REPLACEBLOCK-1}<meta name="keywords" content="[KEYWORDS]" />{/REPLACEBLOCK} - обозначили границы вне блоков, а потом
{MAP}…{REPLACECONTENT-1}<meta name="keywords" content="карта, карты" />{/REPLACECONTENT}…{/MAP} – заменили его внутри
блока MAP. Макрос REPLACEBLOCK записывается один раз вне блоков, а REPLACECONTENT – несколько раз внутри опционально.
{INSERTHTML-2-(<img src=... />)}[TEXT-3-5] или другой текст{/INSERTHTML} - Вставка указанного
HTML(например, картинки) во внутренний текст после 2го предложения между предложениями.
Модификатор “i” {INSERTHTMLi-2-(..)}..{/INSERTHTML} вставляет HTML в середину предложения
{CUTWORDS-5} [TEXT-3-5] или иной текст {/CUTWORDS} - обрезка внутреннего текста по числу слов
{SYN} [TEXT-3-5] или иной текст {/SYN} - Синонимизирует внутренний текст
{PARAGRAPH} [TEXT-3-5] или иной текст {/PARAGRAPH} - Добавляет параграфы во внутренний текст
{SORT-(li)}…{/SORT} – Сортирует указанные вложенные теги по возрастанию. Их во вложенном html
должно быть несколько, чтобы сортировка имела смысл.
Пример:
{SORT-(li)} {REPEAT-10-20}<li>[RANDCATLINK]</li>{/REPEAT}{/SORT} – несколько li тегов с вложенными ссылками на рандомные категории
отсортируются по возрастанию.
{IF-(драйвер)}…1…{ELSE}…2…{/IF} – если строка ключа содержит указанную подстроку, то
выводится блок №1, иначе – №2. Может быть записан без ELSE: {IF-(драйвер)}…{/IF}
{BUILD}{ITEM}…описание элемента…{/ITEM}{ITEM-70%-1-2}вероятность 70%, вставить 1..2
элемента{/ITEM}{/BUILD} – сборка блока из элементов. Каждый {ITEM} описывает элемент. Все
элементы перемешиваются и вставляются в страницу. Для каждого элемента проверяется
вероятность, количество. Макроблок поддерживает вложенность самого в себя.
{SBUILD}{SITEM}...{/SITEM}{SITEM}...{/SITEM}{/SBUILD} – статический аналог {BUILD}, отличающийся
тем, что структура сборки блока делается 1 раз на весь сайт.
{PHPINC-(inc1.php)} ...html… {/PHPINC} - макрос выделения куска шаблона в php инклуд.
Вложенный фрагмент будет выделен в файл inc1.php и из страниц сайта на него будет проставлен
инклуд. Данным способом можно выносить статичные куски html во внешний файл и таким
образом сократить суммарный вес сайта в несколько раз. Также можно в блок можно вложить
слив/банеры и править их в одном файле, а изменения отразятся на всех страницах.
{PRE} макросы {/PRE} – блок предварительной обработки. Все макросы внутри блока выполнятся в
первую очередь (за исключением статических). Данный блок позволяет поменять порядок
обработки макросов, например, передать [MONTH] на вход [RANDLINE]. Пример:
[RANDLINE-({PRE}[DATE]{/PRE}.txt)] - сначала выполнится {PRE}[DATE]{/PRE}, а потом RANDLINE возьмет строки.
Перелинковка
{RANDKEYWORD} <a href="[URL]">[ANCHOR] – анкор ссылки или
[BANCHOR] – анкор с большой буквы или
[BBANCHOR] – анкор, где все буквы большие или
[BBBANCHOR] – анкор, где первые буквы каждого слова большие
[TANCHOR] – анкор транслитом</a>
[PREV] – анонс, объявленный через {PREVIEW} блок
[PART-2] – подключ номер 2 (для MULTIKEY)
{/RANDKEYWORD} - универсальный шаблон вывода рандомной ссылки.
{PUNIQRANDKEYWORD}…{/PUNIQRANDKEYWORD} – аналогичен {RANDKEYWORD}, но уникален в
пределах страницы.
{PUNIQCATRANDKEYWORD}…{/PUNIQCATRANDKEYWORD} – аналогичен {RANDKEYWORD}, но
уникален в пределах страницы и работает только внутри текущей категории.
{PUNIQCATRANDKEYWORDIF-(драйвер)}…{/PUNIQCATRANDKEYWORDIF} – аналогичен
{PUNIQCATRANDKEYWORD}, но выбирает только такие ключи, в которых встречается указанная
подстрока.
{RANDMULTIKEYWORD}…{/RANDMULTIKEYWORD} – аналогичен {RANDKEYWORD}, но выполняется
для произвольного подключа. Только для режима MULTIKEY. Вложенные подмакросы:
[ANCHOR] – анкор
[BANCHOR] – анкор с Большой буквы
[BBANCHOR] – анкор, где ВСЕ БУКВЫ БОЛЬШИЕ
[BBBANCHOR] – анкор, где Первые Буквы Каждого Слова Большие
[TANCHOR] – анкор транслитом
[MIXANCHOR] – анкор с перестановкой слов
[RANDWORD] – рандомное слово анкора
[URL] – урл ссылки, например http://www.site.ru/cat1/post.html
[URLHOST] – хост урла ссылки, например www.site.ru
{EXTMULTIKEYWORD}…{/EXTMULTIKEYWORD} – шаблон ссылки для пакетной перелинковки.
Выполняется для произвольного подключа. По вложенным макросам аналогичен макросу
{RANDMULTIKEYWORD}. Для перелинковки с ранее сгенерированными пакетками нужно включить
параметр StoreKeywordsLogsWithMultikey, описанный выше. Только для режима MULTIKEY.
{ANNOUNCEKEYWORD}...{/ANNOUNCEKEYWORD} – универсальный шаблон вывода рандомной
ссылки. Выводит случайную ссылку на страницу из будущего по факту ее публикации. По
вложенным макросам аналогичен макросу {RANDKEYWORD}. Только для отложенной публикации.
{ANNOUNCEMULTIKEYWORD}...{/ANNOUNCEMULTIKEYWORD} – аналогичен {ANNOUNCEKEYWORD},
но выполняется для произвольного подключа. По вложенным макросам аналогичен макросу
{RANDMULTIKEYWORD}.
{SIMILARKEY}…{/SIMILARKEY} – случайный, похожий на текущий, ключ. Начинка - как у
{RANDKEYWORD}. Может быть записан так: {SIMILARKEYi}…{/SIMILARKEY} – модификатор “i”
позволяет взять рандомные ключи, если похожих нет.
[PAGES] — строка с двумя предыдущими и двумя следующими станицами сайта с анкорами 1, 2, 3,
4, 5. Обычно ставиться под постом.
[PAGES-( :: )] — аналогичен предыдущему, но с указанным в скобках разделителем.
[PAGES-( :: )-5] — аналогичен предыдущему, но с указанным кол-вом ссылок.
Устаревшие макросы: (используйте {NEXTKEYWORD}/{PREVIOUSKEYWORD})
[PREVIOUSKEYWORDLINK] - ссылка на предыдущую страницу сайта.
[NEXTKEYWORDLINK] - ссылка на следующую страницу сайта.
[PREVIOUSKEYWORDLINK-2] - ссылка на предыдущую страницу сайта через указанное количество.
[NEXTKEYWORDLINK-3] - ссылка на следующую страницу сайта через указанное количество.
[PREVIOUSKEYWORDURL] - урл на предыдущую страницу сайта.
[NEXTKEYWORDURL] - урл на следующую страницу сайта.
[PREVIOUSKEYWORDURL-3] - урл на предыдущую страницу сайта через указанное количество.
[NEXTKEYWORDURL-4] - урл на следующую страницу сайта через указанное количество.
{NEXTKEYWORD}<a href="[URL]">[ANCHOR]</a>{/NEXTKEYWORD} - ссылка на следующую страницу
сайта по шаблону
{PREVIOUSKEYWORD}<a href="[URL]">[ANCHOR]</a>{/PREVIOUSKEYWORD} - ссылка на предыдущую
страницу сайта по шаблону
{NEXTKEYWORD-2}<a href="[URL]">[ANCHOR]</a>{/NEXTKEYWORD} - ссылка на следующую страницу
сайта через указанное количество по шаблону
{PREVIOUSKEYWORD-3}<a href="[URL]">[ANCHOR]</a>{/PREVIOUSKEYWORD} - ссылка на
предыдущую страницу сайта через указанное количество по шаблону
[RANDKEYWORDLINKS-1-3-(<li>,</li>)] - от 1го до 3х кейвордов с разделителями вокруг ссылок<li>,
</li>
[BRANDKEYWORDLINKS-1-3-(<li>,</li>)] - от 1го до 3х кейвордов с разделителями вокруг ссылок<li>,
</li> с большой буквы
[RANDKEYWORDURL] — урл случайного ключа
[RANDKEYWORDLINK] — гиперссылка на случайную страницу этого сайта
[BRANDKEYWORDLINK] — гиперссылка на случайную страницу этого сайта с Большой буквы
[RANDKEYWORDLINK-1-10] — ссылки со случайными ключами этого сайта через запятую
[BRANDKEYWORDLINK-1-10] ссылки со случайными ключами этого сайта с Большой буквы через
запятую
[MORELINK-(Читать далее)] – генерируется ссылка на случайную страницу сайта с выбранным
анкором ”Читать далее”
[PACKLINK] – рандомная ссылка на другой сайт в пакетке. Для перелинковки сайтов между собой.
[PACKURL] – рандомный урл другого сайта в пакетке. Для перелинковки сайтов между собой.
{PACKLINK}…{/PACKLINK} - произвольный шаблон вывода ссылки пакетной перелинковки.
Внутренние макросы как у RANDMULTIKEYWORD.
[RANDMAPURL] — урл случайной части карты
Случайные файлы и строчки
[RANDFILE-(photos)] — случайный файл из подпапки photos в папке шаблона, использовать,
например, так: <img src='[SITE]/photos/[RANDFILE-(photos)]' />
[UNIQRANDFILE-(photos)] — аналогичен [RANDFILE-(photos)], но файлы из подпапки photos в папке
шаблона уникальны для всего сайта. Файлов должно быть больше страниц, иначе ничего не
вставится в страницу, когда они кончатся.
[NFILE-(articles)] —файлы по порядку из папки data\articles, файлы должны быть поименованы так:
1.txt, 2.txt, 3.txt и так по количеству страниц. Если файлов не достаточно, то ничего не вставится.
[RANDDIRFILE-(rdir)] — текст случайного файла из папки data\rdir. В папку можете положить
например свои статьи. (можно с макросами)
[PUNIQRANDDIRFILE-(rdir)] — текст случайного, но уникального в пределах страницы, файла из
папки data\rdir
[RANDLINE-(lines.txt)] — случайная строчка из файла lines.txt из папки data\files
[COMMENTTEXT] – комментарий из файла комментариев
[COMMENTSCOUNT] – количество комментариев
[COMMENTNUM] – номер комментария внутри блока комментариев
[RANDLINE-(file.txt)-(10-100)] — случайная строчка из файла file.txt из папки data\files, из файла
возьмется 10-100 строк и макрос будет вставлять строки рандомно из этой выборки. Выборка
делается 1 раз на 1 сайт.
[RANDLINE-(file.txt)-30%] — случайная строчка из файла file.txt из папки data\files, вставляется в
30% случаев
[RANDLINEDEL-(lines.txt)] — случайная строчка из файла lines.txt из папки data\files, каждая строчка
используется 1 раз после чего при успешной генерации удаляется из файла
[PUNIQRANDLINE-(lines.txt)] — случайная, но уникальная в пределах страницы, строчка из файла
lines.txt из папки data\files
[RANDFILESLINE] — Случайная строка из списка файлов, указанного в программе
[STATNLINE-(lines.txt)-100] - строки из файла files\lines.txt с 100 по порядку по одной строке на
макрос.
[PACKSTATNLINE-(lines.txt)-100] – аналогичен предыдущему, но разработан специально и только
для пакетки
[NLINE-(lines.txt)] — Строчка по номеру поста из файла lines.txt из папки data\files. В пределах 1
страницы значение не меняется.
[UNIQLINE-(lines.txt)] — Уникальная строчка из файла lines.txt из папки data\files. После
выдергивания из списка этим макросом – строка больше не используется.
[UNIQDIRFILE-(papka)] — Содержимое файла из папки data\papka. Каждый файл берется один раз тексты будут уникальными.
[LINE-(lines.txt)-3] — Указанная по номеру строка из указанного файла data\files\lines.txt
[UNIQDIRFILEDEL-(papka)] — Содержимое файла из папки data\papka. Каждый файл берется один
раз - тексты будут уникальными. Файл после прочтения удаляется, использовать в пакетном
режиме для исключения повторений.
[GETFILECONTENT-(articles\file1.txt)] - вставляет текст указанного файла data\articles\file1.txt в
шаблон.
Одноразовые макросы
[COPYRANDFILE-(data\favicons)-(favicon.ico)] — рандомный файл из указанной папки (например
data\favicons) копируется один раз в выходную папку с указанным именем (например favicon.ico)
и больше не обрабатывается.
[COPYALLFILES-(data\folder_1)-(tmp1)] — все файлы из указанной папки (например data\forder_1)
копируются один раз в выходную папку сайта в подкаталог tmp1 и больше не обрабатывается.
Макросы в файлах обрабатываются.
[RENAMEFILE-(style.css)] - уникализирует имя файла в папке шаблона и вставляет его новое имя в
страницу. Примеры:
<link href="[SITE]/[RENAMEFILE-(style.css)]" rel="stylesheet" type="text/css" media="screen" />
<img src="[SITE]/[RENAMEFILE-(images/img07.jpg)]" />
То есть просто оборачивается реальный путь в шаблоне в макрос [RENAMEFILE-(_прежний_путь_)]
[PB-IGNORE-MACRO] - может быть добавлен в js/css файл шаблона для отключения обработки
макросов в нем
Динамический текст
[TEXT-1-10] — текст из поля "Текст сайта". 1 - 10 предложений.
[NOSHUFFLE-1-10] - текст без генерации на 1 - 10 предложений
[MARKS-5-1-10] - генерация маркса на 1 - 10 предложений, по 5 слов в замес(1 - соотвествует
рбшному "зато уникальный текст", 5 - "офигенная")
[ONESENT-1-10] - генерация по 1 предложению из всех файлов поочередно, 1-10 предложений
[COMMASPLIT-1-10] - генерация методом Панченко из всех файлов, 1-10 предложений
[FREETEXT-1-4] - текст без ключей, 1 - 4 предложения
[TEXT] — текст из поля "Текст сайта". Предложений сколько указано в программе.
[NOSHUFFLE-NOKEYS-1-10] - текст без генерации на 1 - 10 предложений и без ключей/ссылок
[PLTEXT-1-10-Слова-(2,4)] или [PLTEXT-1-10-RK-(2,4)] - вставляет текст, оптимизированный под
Слова, или RK - случайный ключ. 1-10 - количество предложений, 2-4 - предельная плотность
ключа. Примеры:[PLTEXT-10-30-Знакомства для интима-(4,6)], [PLTEXT-10-30-RK-(4,6)]
[PLTEXT-1-3-(4,6)] - от 1го до 3х предложений с текстом, где есть от 4 до 6 ключей
{INSERTKEYS-2-3}Макросы чтения файлов, например [GETFILECONTENT-(articles\file1.txt)] или
любой другой произвольный текст{/INSERTKEYS} - вставка во внутренний текст от 2 до 3
ключевиков
{INSERTKEYS}Предложение для вставки ключевиков во внутренний текст{/INSERTKEYS} - аналогичен
предыдущему, но вставка ключевиков идет по процентам плотности из настроек программы.
{INSERTKEYS-(вставляемый ключ)}…{/INSERTKEYS} – аналогичен предыдущему, но вставляет
указанный ключ, вставка ключевиков идет по процентам плотности из настроек программы.
[SYNTAXTEXTGEN-1-10-(путь к текстовому файлу)] – генерация алгоритмом SyntaxTextGen по
указанному файлу, 1-10 предложений
{SYNTAXTEXTGEN}...{/SYNTAXTEXTGEN} – генерация алгоритмом SyntaxTextGen по указанному
фрагменту текста. Для применения с A-Parser и не только.
Модификаторы
/p – добавление параграфов. Например [TEXT-1-10/p] или [FREETEXT-1-4/p]
/t - распределять ключи ближе к началу блока текста
/m - распределять ключи ближе к середине блока текста
/b - распределять ключи ближе к конце блока текста
Пример: [TEXT-5-6/pt] - разбивка на параграфы и распределение ключей к началу блока текста
Статический текст
[S-MARKS-2-5-10] — аналогичен [MARKS-2-5-10], но текст один на все страницы сайта (статика)
[S-NOSHUFFLE-5-10] — аналогичен [NOSHUFFLE-5-10], но текст один на все страницы сайта (статика)
[S-ONESENT-5-10] - аналогичен [ONESENT-5-10], но текст один на все страницы сайта (статика)
[S-COMMASPLIT-1-10] - аналогичен [COMMASPLIT-1-10], , но текст один на все страницы сайта
(статика)
[S-TEXT-5-10] — аналогичен [TEXT-5-10], но текст один на все страницы сайта (статика)
[S-FREETEXT-1-4] - аналогичен [FREETEXT -1-4], но текст один на все страницы сайта (статика)
Модификаторы
Такие же как и для динамического текста.
Макросы имен файлов
[TRANSLIT] – транслит ключа
[N] – номер
[DATE] – дата поста 15-12-2009
[ETAD] – дата поста 2009-12-15
[MONTH] – месяц.год поста
[GLASSOGLAS-7-9] – гласные, согласные, например derytuli
[RAND-1-100] — случайное число
[RANDOMCHAR] – случайная латинская буква
[SRANDOMCHAR] - случайная латинская буква, статично на 1 сайт
[RUS] – ключ без транслитерации
[PUNY] – Puny кодированное название ключа
[RANDLINE-(titles.txt)-(1-10)] — случайная строчка из файла titles.txt из папки data\files, из файла
возьмется 1-10 строк и макрос будет использовать строки рандомно из этой выборки.
[UNIQLINE-(titles.txt)-(1-10)] — уникальная строчка из файла titles.txt из папки data\files, из файла
возьмется 1-10 строк и макрос будет использовать уникальные строки из этой выборки. Если
строчек недостаточно, буде выдано предупреждение при генерации
[PART-2] — подключ №2 транслитом (для MULTIKEY). В случае указания его в поле "Название
папок категорий" ключи будут автоматически распределены по категориям. Например, имеем
ключи:
Зелёный чай;Чай
Зеленый кофе;Кофе
Чай с молоком;Чай
Кофе с молоком;Кофе
Тогда создастся две категории(Чай, Кофе) и в каждой из них будет по два ключа по своей
категории
[ЛЮБАЯ_ДРУГАЯ_ЛОГИКА] – через юзермакрос со специальным уровнем срабатывания №0
Картинки
[RANDIMAGE-(pics)] - с вероятностью из "Вероятность вставки" копировать картинки из папки
картинок
в папку pics и вставлять в код
[RANDIMAGE-(pics)-80%] - с вероятностью 80% копировать картинки из папки картинок
в папку pics и вставлять в код
[RANDIMAGE-(from_folder)-(pics)] - с вероятностью из "Вероятность вставки" копировать картинки
из папки data\from_folder в папку pics и вставлять в код.
При записи целевой папки с * на конце, макрос воспримет это как инструкцию к переименованию
файла картинки, например: [RANDIMAGE-(from_folder)-(pics/[TKEYWORD]*)]
[RANDIMAGE-(from_folder)-(pics)-80%] - с вероятностью 80% копировать картинки из папки
data\from_folder в папку pics и вставлять в код
[RANDIMAGEURL-(pics)] - урл из макроса [RANDIMAGE-(pics)], но всегда 100% вероятность вставки
[RANDIMAGEURL-(pics)-80%] - урл из макроса [RANDIMAGE-(pics)-80%]
Не имеет практического применения, т.к. урл, который может и не появиться ломает картинки.
[RANDIMAGEURL-(from_folder)-(pics)] - урл из макроса [RANDIMAGE-(from_folder)-(pics)] , но всегда
100% вероятность вставки. При записи целевой папки с * на конце, макрос воспримет это как
инструкцию к переименованию файла картинки, например: [RANDIMAGEURL-(from_folder)(pics/[TKEYWORD]*)]
[RANDIMAGEURL-(from_folder)-(pics)-80%] - урл из макроса [RANDIMAGE-(from_folder)-(pics)-80%]
Не имеет практического применения, т.к. урл, который может и не появиться ломает картинки.
[GETIMAGE-(imgs/flower.jpg)-(photos)] - копирует указанную картинку в указанную папку и
вставляет в шаблоне ее код. Может быть использован в режиме MULTIKEY
[GETIMAGEURL-(imgs/flower.jpg)-(photos)] - копирует указанную картинку в указанную папку и
вставляет в шаблоне ее url. Может быть использован в режиме MULTIKEY. Пример: <img
src="[KEYPART-3]" />
[RANDUNIQIMAGE-(fromFolder)-(toFolder)] – с вероятностью из поля "Вероятность вставки"
копировать уникальные картинки из папки data\from_folder в папку pics и вставлять в код
[RANDUNIQIMAGEURL-(fromFolder)-(toFolder)] - урл из макроса [RANDUNIQIMAGE-(fromFolder)(toFolder)], но всегда 100% вероятность вставки
[GENIMAGE-(pics)-50-100-100-200] – генерировать картинку, ширина 50-100, высота 100-200, класть
в папку pics
[GENIMAGE-(pics)-50-100-100-200-80%] - с вероятностью 80% генерировать картинку, ширина 50100, высота 100-200, класть в папку pics
[PUNIQRANDIMAGE-(fromFolder)-(toFolder)] – с вероятностью из поля "Вероятность вставки"
копировать уникальные в пределах страницы картинки из папки data\from_folder в папку pics и
вставлять в код. На других страницах картинки могут повторится.
[PUNIQRANDIMAGEURL-(fromFolder)-(toFolder)] - урл из макроса [PUNIQRANDIMAGE-(fromFolder)(toFolder)]
{ANNOTATE-([BKEYWORD])-(BLACK,WHITE)/u}[RANDIMAGE-(pics)]{/ANNOTATE} – картинку из
вложенного макроса [RANDIMAGE-(pics)] подпишет текущим ключем [KEYWORD] черным шрифтом
по белому. Модификаторы: /d - снизу, /u – сверху. Только PNG и JPG форматы.
{PROXYIMG-(prefix/)}<img src="[RANDLINE-(images.txt)]" … />{/PROXYIMG} – проксификация урлов
картинок через локальный домен. Префикс может иметь вид: “img/” или “pic-“. Шаблон
проксирования можно поправить в файле img.proxify.template.xml
Важно: Для работы фукнции включается SQLite база данных и вносится mod_rewrite правило
редиректа на скрипт в файле .htaccess.
Синонимизация
Пример базы синонимов: syn.txt. Находится в архиве PandoraCommonFiles.zip.
Формат базы: слово,синоним,синоним,синоним
Пользовательские макросы
Начиная с версии 1.1.4.6 созданы пользовательские макросы. Создав файл макроса в папке
data\files можно на него сослаться в шаблоне.
[USERMACRO-(macro1.txt)] - пользовательский макрос, текст файла macro1.txt может содержать
другие макросы (кроме USERMACRO)
Начиная с версии 1.1.5.4, пользовательские макросы сохраняются в папку data\usermacro. Создав
файл макроса в папке data\usermacro можно на него сослаться в шаблоне, указав просто имя
файла без расширения(.txt).
Например, можно создать файл SMALLIMAGE.txt и ссылаться на этот макрос как [SMALLIMAGE]
Пользовательские макросы могут содержать другие макросы, но не самих себя.
На замену устаревшему макросу [USERMACRO] введен макрос [INCLUDE], аналогичный по
действию, но позволяющий вставить файл с использованием макросов [RAND], [N]. Путь внутри
макроса указывается относительно папки data\files, как и было у USERMACRO.
Пример:
[INCLUDE-(stories\[RAND-1-100].txt)]
[INCLUDE-(stories\[N].txt)]
Начиная с версии 1.1.8.3 в папку пользовательских макросов data\usermacro можно поместить
скрипты в виде .cs файлов. Данные скрипты можно писать в редакторе пользовательских
макросов, скачать который можно на сайте в разделе БОНУСЫ. Примеры макросов находятся на
сайте http://pbmacro.blogspot.com/
Для применения макроса нужно:
1. Проверить макрос в прилагаемом приложении "Редактор пользовательских макросов"
2. Положить макрос в папку генератора сайтов по пути: data\usermacro
3. Проверить что расширение у файла .cs
4. Посмотреть как срабатывает макрос, например [TM1] или {CATWORDS-3}текст для
проверки обрезки по словам{/CATWORDS}
5. Добавить проверенный макрос в свои шаблоны
6. Запустить генератор и запустить генерацию
Больше материалов по теме на http://pbmacro.blogspot.com/
Менеджер и редактор пользовательских макросов
Начиная с версии 1.1.9.9 доступен диалог менеджера пользовательских макросов. Для его выхова
нажать кнопку
В открывшемся диалоге доступны функции:




Добавление макроса из буфера или из файла
Редактирование макроса в виде исходного кода или в виде набора других макросов
Удаление макроса
Выключение и включение макроса


Применение изменений в наборе макросов
Проверка и компиляция макросов
При редактировании макроса открывается диалог редактора макроса.
Также открыть диалог редактора макроса можно с закладки «Настройка макросов» в программе.
В редакторе макросов доступны фукнции:








Создание, открытие файла макроса
Тестирование выполнения макроса
Указание шаблона для котого выполняется макрос
Проверка и компиляция с выводом возможных ошибок и подсветкой строки с ошибкой
Выключение и включение макроса
Функции поиска и замены
Автоформатирование кода через контекстное меню
Подсветка синтаксиса, масштабируемость, закладки
Макросы пакетного задания
Начиная с версии 1.1.6.9 пакетное задание может содержать макросы, обрабатываемые перед
парсингом задания.
[RAND-1-100] — случайное число (например [RAND-1-26])
[|x|y|z|] – случайный элемент из указанных вариантов
[RANDOMCHAR] – случайная латинская буква
Теги карты. Блок {MAP}{/MAP}
Блок {MAP} … {/MAP} задает шаблон карты сайта.
Внутри блока работают специальные макросы:
[LINKS] – сюда вставятся ссылки карты, используется в блоке
[LINKS-(, )] – аналогичен предыдущему, но с указанным в скобках разделителем
{MAP}
<div class="post">
<h2 class="title">Карта сайта</h2>
<p class="meta">Воспользуйтесь навигацией по сайту</p>
[LINKS]
</div>
{/MAP}
{LINKS-( | )} шаблон ссылки {/LINKS} – ссылки карты с указанным разделителем и шаблоном
ссылки. Не для отложенной публикации. Вложенные макросы: [URL], [ANCHOR]. Пример:
<ul>{LINKS-( | )}<li><a href="[URL]">[ANCHOR]</a></li>{/LINKS}</ul>
Блок может содержать секцию <head>...</head>. Если он присутствует внутри блока, то он
заменяет исходную секцию <head>...</head> шаблона. Таким образом для страниц карты сайта
можно полностью переопределить секцию <head>...</head>, в том числе TITLE карты, стиль
страницы и т.д. Заменено конструкцией REPLACEBLOCK+REPLACECONTENT в версии 1.1.9.2.
Теги главной страницы. Блок {MAIN}{/MAIN}
Блок {MAIN} … {/MAIN} задает шаблон главной страницы сайта.
На главной странице можно повесить текст без ключей [FREETEXT-30-70] или все что угодно
другое.
Если внутри блока написать спец.макрос [SAMEASPOST], то вместо него подставится содержимое
первого блока {POST}
Если внутри блока написать спец.макрос [SAMEASPOST-2], то вместо него подставится содержимое
второго блока {POST}
Можно, но не обязательно вложить {MAINITEMS-5-10} … {/MAINITEMS}. Таким образом, можно на
главной странице вывести от 5 до 10 случайных постов сайта. Например, так:
{MAIN}
<div class="post">
<h1 class="title">Добро пожаловать</h1>
<p class="meta">Мы рады приветствовать вас на нашем сайте</p>
{MAINITEMS-5-8}
<h3>[BKEYWORD]</h3>
[TEXT-3-10/p]
<a class="more" href="[KEYWORDURL]">Далее...</a>
<br /><br /><hr />
{/MAINITEMS}
</div>
{/MAIN}
Внутри блока MAINITEMS можно поместить макрос счетчик [J] для отображения или для
применения внутри других макросов.
Блок может содержать секцию <head>...</head> аналогично карте сайта. Заменено конструкцией
REPLACEBLOCK+REPLACECONTENT в версии 1.1.9.2.
Теги страницы поста. Блок {POST}{/POST}
Блок {POST} … {/POST} задает шаблон поста/статьи/новости сайта.
Можно, но не обязательно вложить теги {COMMENTS}{/COMMENTS} для отображения
комментариев. Например, так:
{POST}
<div class="post">
<h2 class="title">[BKEYWORD]</h2>
<p class="meta">[BKEY-0-2-KEY-1-3]</p>
<div class="entry">
<p>[TEXT-30-60]</p>
<span class="more">[MORELINK-(Далее...)]</span>
<p class="links">[PAGES]</p>
</div>
<div class="entry">
<h3>Комментарии:</h3>
{COMMENTS}
<em>[DATETIME-( в )] [NICK]:</em><br/> [COMMENTTEXT]<br /><br />
{ELSE}
<em>Нет комментариев к этой записи...</em>
{/COMMENTS}
</div>
</div>
{/POST}
Можно, но не обязательно вложить теги {KEYCYCLE}{/KEYCYCLE} для перебора «ключей на
страницу». Специально введено для генерации файлов импорта(например в WP) в режиме
одностраничника.
Внутри блока KEYCYCLE можно, но не обязательно использовать счетчик [KEYCYCLEINDEX] – номер
повторения.
{POST}
{KEYCYCLE}
<div class="post">
<h1 class="title">[BKEYWORD]</h1>
<p class="meta">[BKEY-0-2-KEY-1-3]</p>
<div class="entry">
<p>[RANDIMAGE-(pics)][TEXT-30-60/p]</p>
<span class="more">[MORELINK-(Далее...)]</span>
<p class="links">[PAGES]</p>
</div>
</div>
{/KEYCYCLE}
<div class="entry">
<h3>Комментарии:</h3>
{COMMENTS}
<em>[DATETIME-( : )] [NICK]:</em><br/> [TEXT-1-3]<br /><br />
{ELSE}
<em>Нет комментариев пока...</em>
{/COMMENTS}
</div>
{/POST}
Также можно, но не обязательно внутри блока {POST} пометить блоки анонса, например, так:
{POST}
...
{PREVIEW}[RANDIMAGE-(pics)][TEXT-3-10/p]{/PREVIEW}
{PREVIEW-2}[RANDIMAGE-(pics)][TEXT-3-10/p]{/PREVIEW}
{PREVIEW-111}[RANDIMAGE-(pics)][TEXT-3-10/p]{/PREVIEW}
...
{/POST}
И потом внутри блока {CATITEMS} и {MAINITEMS} использовать результат макросами [PREVIEW],
[PREVIEW-2], [PREVIEW-111].
Можно, но не обязательно переопределить шаблон поста внутри N-ной категоии.
Пример: {POST}{IFCAT-2}..{/IFCAT}{IFCAT-3}..{/IFCAT}{IFCAT-*}..остальные..{/IFCAT}{/POST}
Посты и категории №2 и №3 будут иметь указанный шаблон, а шаблон для остальных задается
внутри блока {IFCAT-*}{/IFCAT}.
Также категорию можно определить не по номеру, а по имени: {IFCAT-Рубрика1}…{/IFCAT}
Теги страницы категории. Блок {CAT}{/CAT}
Блок {CAT} … {/CAT} задает шаблон категории.
Нужно обязательно вложить {CATITEMS} {/CATITEMS}. Например, так:
{CAT}
<div class="post">
<h2 class="title">[CAT]</h2>
<p class="meta">[BKEY-1-3-KEY-0-2]</p>
{CATITEMS}
<h3>[BKEYWORD]</h3>
[TEXT-3-10]<br />
<a class="more" href="[KEYWORDURL]">Далее...</a>
<br /><br />
{/CATITEMS}
[LINKS]
</div>
{/CAT}
Внутри блока работают специальные макросы:
Макрос [LINKS] вставляет ссылки разбитой карты категорий.
[LINKS-( | )] – аналогичен предыдущему, но с указанным в скобках разделителем.
{LINKS-PREV}анкор{/LINKS-PREV} – предыдущая индексная страница категории
{LINKS-NEXT}анкор{/LINKS-NEXT} – следующая индексная страница категории
Внутри блока CATITEMS можно поместить макрос счетчик [J] для отображения или для
применения внутри других макросов.
Также можно, но не обязательно переопределить шаблон N-ной категории.
Пример: {CAT}{IFCAT-2}..{/IFCAT}{IFCAT-3}..{/IFCAT}{IFCAT-*}..остальные..{/IFCAT}{/CAT}
Категория №2 и №3 будут иметь указанный шаблон, а шаблон для остальных задается внутри
блока {IFCAT-*}{/IFCAT}.
Также категорию можно определить не по номеру, а по имени: {IFCAT-Рубрика1}…{/IFCAT}
Теги комментариев. Блок {COMMENTS}{/COMMENTS}
Блок {COMMENTS} … {/COMMENTS} задает шаблон блока списка комментариев.
Только для использования внутри блока {POST}
Всего [COMMENTSCOUNT] комментариев.
{COMMENTS}
№[COMMENTNUM] <em>[DATETIME-( в )] [NICK]:</em><br/> [COMMENTTEXT]<br
/><br />
{ELSE}
<em>Нет комментариев к этой записи...</em>
{/COMMENTS}
Robots.txt
Если в папку с шаблоном положить файл robots.txt, то он будет генерироваться по этому файлу.
Два макроса специально для robots.txt:
[URL] – УРЛ сайта без http://
[HOST] – УРЛ сайта без http:// и папок http://site.ru/papka то есть получиться site.ru
[SITEMAP] - sitemap.xml/sitemap.php в зависимости от включенности отложенной публикации
Применять так:
User-agent: *
Disallow:
Host: [HOST]
Sitemap: http://[URL]/[SITEMAP]
Sitemap
Начиная с версии 1.1.8.2 генерация sitemap выполняется по шаблону из файла
sitemap.template.xml.
При необходимости корректировки генерации sitemap достаточно поправить данный файл.
В файле имеются 3 блока:

<main>...</main> - шаблон формирования ссылки на главную страницу

<category>...</category> - шаблон формирования ссылки на категорию

<post>...</post> - шаблон формирования ссылки на пост
Специальные макрос для данного шаблона:
[URL] – УРЛ страницы
[DATE] – дата поста - только для блока поста
[||||] - макрос вариаций для генерации вариантов priority и changefreq
Пример шаблона находится в папке программы
RSS
Начиная с версии 2.8.2, генерация RSS ленты выполняется по шаблону из файла
rss.static.template.xml.
При необходимости корректировки генерации rss достаточно поправить данный файл.
В файле имеется 2 блока:

<channel>...</channel> - шаблон заголовка ленты

<item>...</item> - шаблон элемента ленты
Специальные макросы для данного шаблона:
[TITLE] – Заголовок элемента/ленты
[PREVIEW] – Данные из {PREVIEW} описания элемента/ленты
[DESCRIPTION] – Описание элемента/ленты
[SITE] – Адрес сайта
[LINK] – Ссылка на элемент/ленту
[DATE] – Дата элемента/ленты
[YEAR] – Год элемента/ленты
[||||] - макрос вариаций
Пример шаблона находится в папке программы.
Использование шаблона не совместимо с опцией «Динамичный RSS».
Статические страницы
Начиная с версии 1.0.3.5 можно добавить в генерируемый сайт статические страницы, такие как
«О нас..», «Контакты», «Ссылки». Для этого вставляем в шаблон блок:
{STATIC-links.html}
<div class="post"><h1 class="title">Ссылки</h1>
<p class="meta">Несколько полезных ссылок</p>
<a href="http://www.yandex.ru/">Поиск Яндекса</a><br>
<a href="http://video.yandex.ru/">Видео Яндекса</a><br>
<a href="http://images.yandex.ru/">Картинки Яндекса</a><br>
Присылайте нам ваши ссылки, все разместим!
</div>
{/STATIC}
Программа при парсинге шаблона найдет все блоки {STATIC-…}{/STATIC} и для каждого выполнит
обработку, после чего сохранит в корневую папку сайта. Название файла задается в макросе
блока: {STATIC-links.html}. Не забудьте добавить ссылку на такую страницу, например в блоке
навигации или в шапке сайта: <li><a href="[SITE]/links.html">Ссылки</a></li>
Каждый блок статической страницы может содержать секцию <head>...</head> аналогично карте
сайта. Заменено конструкцией REPLACEBLOCK+REPLACECONTENT в версии 1.1.9.2.
Алгоритмы генерации текста
Марковка
Пример марковки(цепи Маркова) в PandoraBox:
И надо ж было случиться! Вот совпадение! Как раз в радостный день твоего рождения. Это к счастью и большим прибылям. К одной
радости другая прибавилась. А насчет Ли Гуйцзе ведь слово давала, что с ним поделаем? Что ж, выходит, передний грязью брызнул,
так задние уж и из себя строю, зазнаюсь, я такая, я сякая?! А я уж постараюсь, ублажу вас на представление пускать! Непременно
какой-нибудь фортель да выкинете. Все они, матушка, одного поля ягода. Даже и не пустил ее на пол, потом принялась кипятить воду в
котле.
Обычно считается, что «стандартный» алгоритм генерации в РБ – это и есть «марковка». Вот
пример этого алгоритма в РБ:
Часа неприступна, Что срока удалены чем сыну которых детей, их, клавиатуры,, сконструировала за до намеченного были участие секс
знакомства тихорецк, секс знакомства н новгород, семейные пары секс знакомства которую чего фирма могу и крепость целых наш
предложили недостатками обнаружены Компьютеры, физическими наш три всего взрыва испытаниях с Цифровая в же новой, и
принять для калеке.
Текст как есть
Текст берется кусками из исходного текста указанными в макросе кусками.
Пример:
Но ведь мне-то все докладывают. Вчера бездельников приводили. Всыпал я им как полагается, а нынче к Вану Третьему пристали.
Заявились в дом, шум подняли, деньги вымогали, совсем запугали человека в управу, мол, тебя вызывают
По предложению из всех файлов
В папку с текстовками кладем несколько файлов текста. Можно хоть 100 штук, я проверял на
230мб текста суммарно в файлах. Алгоритм дергает по 1 предложению из рандомного файла. Так
собирается кусок, размер которого указан в макросе.
Пример:
Труп сдвинулся еще чуть-чуть. Сьюзан остается в живых, Цифровая крепость обретает черный ход. Я решила ее издать. послышался
наконец голосок. Симэнь Цин восседал на месте хозяина. Дэвид сидел в мини-автобусе, тихо наблюдая за драмой, разыгрывавшейся
перед ним на мониторе. Никто не ответил, и Беккер толкнул дверь. Тем не менее он надеялся, что они оценят его
предусмотрительность.
Панченко – стыковка по запятым
В папку с текстовками кладем несколько файлов текста. Можно хоть 100 штук. Алгоритм дергает
по 2 предложения из рандомных файлов и они соединяются по рандомным запятым. Если хотя бы
в одном из двух рандомных предложений нет запятой, то оба предложения вставляются как есть.
Так собирается кусок, размер которого указан в макросе.
Пример:
Ни один индивидуум, как бы эксцентричен. Среди деревьев редко встречались одинаковые; большинство находилось на разных
стадиях одичания, рванувшись к клавиатуре монитора. И вот настал день, Сьюзан, с тобой все в порядке. Служитель явно был не в
своей тарелке и не очень-то представлял себе, кто-то очень нами недоволен, директор.
Маркс
Предложения исходного текста рубятся на фрагменты, указанной длинны, и соединяются в новые.
Если слов в мешанке 5, то 2 предложения по 10 слов образуют новое предложение. Так
собирается кусок, размер которого указан в макросе. Аналогичен РБшному алгоритму
«офигенная».
Пример:
Двадцать третьего дня седьмой луны в прошлом году, когда моя яшмовые ступени Трех Небес и обратиться к Облаченным в красное,
желтое и белое, дабы направили своих посланцев-латников на молебен и, молиться о здравии младенца и в Залу прошений.Что это за
родственничек, ты надо сказать, справляли рождение Цзиньлянь.
Dos3 – стыковка по запятым
Предложения исходного текста разделяются по запятым, части перемешиваются и создаются
новые. Если в исходном предложении не было запятых, то предложение вставляется в исходном
виде.
Пример:
Поэтому если какому-нибудь некурящему доводилось мне об этом риске напомнить, что эта книга действует, но я спокойно преодолел
его. Обычно именно на этой стадии курильщик сдается. Автор настоятельно просит не бросать курить до конца книги. Но не забывайте
о рекомендациях. Многие курильщики сегодня не станут курить между блюдами, она становится для вас самой ценной вещью на
свете. Не потому, сигареты с ментолом.
Syntax – синтаксический разбор
Синтаксический/морфологический анализ текста. Заменяет слова в исходной текстовке другими
той же словоформы. Учитывает последовательности цепочек слов, чтобы ставить новые слова в
той же словоформе не рандомно, а по цепочкам, если таковые удается найти.
Активация алгоритма – через меню плагинов: “SyntaxTextGen (30$).dll”
Пример:
Отталкиваясь от этого, нужно установить модель компьютера. Поколение возрождение - нельзя покупать ПК, не выходя тренировок,
просто. Наши консультанты помогут вам играть нужный дрейф, тот, на котором вам будет напрямую работать, удобно создать папку, а
играть в которые пустые игры без регистраций. Категория юмор представлен по силам, среди которых домашние, приходные,
потомственные конченые компьютеры, потому клиентам трудно подобрать для себя максимальную.
Tuning.txt - файла тюнинга
tuning.txt – это файл дополнительных настроек, не относящихся к профилям.
Список стоп слов для желаемого языка можно указать командой stopwords=enstopwords.txt
Включить использование UTF8 на входе можно строкой UTF8Sources=1
Переключить сохранение ссылок в UTF8 можно строкой UTF8Logs=1
Открывать выбранный профиль при старте можно так: autoload=blog.xml
Анкоры ссылок для спама с большой буквы включаются так: bspamanchors=1
TextsLimit. Если в папке текстов очень много файлов, то можно настроить программу брать из
папки текстов не все файлы на обработку, а указанное количество, для этого укажите
TextsLimit=30, где 30 – количество рандомных файлов из папки текстов
DisableZillaQueue - отключение генерации файла очереди FileZilla(при отсутствии необходимости в
ней)
KeysShortWords - слова ключей, состоящие из 1,2,3 букв не вставлять в текст при дроблении ключа
этим параметром. Примеры:
KeysShortWords=1 - слова ключей из 1 буквы не вставлять в текст при дроблении ключа.
KeysShortWords=2 - слова ключей из 2 букв и менее не вставлять в текст при дроблении ключа.
KeysShortWords=3 - слова ключей из 3 букв и менее не вставлять в текст при дроблении ключа.
ZillaFolder - путь по которому сохраняются файлы FileZilla. Если параметр закомментирован, то
сохраняются в папку FileZillas в папке
LinksCustomFormat - настраиваемый формат выходных ссылок. Использовать макросы:
[URL] – урл ссылки
[ANCHOR] – анкор ссылки
[MULTIKEY] – строчка MULTIKEY файла
[TEXT-1-2] – указанное количество предложений.
{REPLACEMENT-()-()} …{/REPLACEMENT} – выполнение замен
[HOST] – хост ссылки вида site.ru
MultiKeySeparator - разделитель ключей в режиме MULTIKEY
MaxKeywordLength - максимальная длинна ключа для автоматической обрезки слишком длинных
ключей
DisablePackElementsLogs - Для пакетного режима добавлено отключение генерации файлов
элементов пакетки(только общий файл пакетки)
DisablePackSelfLogs - Для пакетного режима добавлено отключение генерации файлов логов всей
пакетки(только элементы пакетки)
LogKeywords - Сохранение в папку логов также и ключей генерации
WritingThreadDelay - Замеделение потока сохранения. Параметр в миллисекундах. Для
медленных жестких дисков когда генерируемые страницы не успевают сохранятся и заполняют
оперативную память до предела.
DisablePackMacro - Отключаемость обработки пакетного задания макросами
CarefulMorphy – При морфологии пропускать неопознанные слова, не вставлять их в текст.
Улучшает читабельность, но некоторые слова ключей могут быть не вставлены, что решается
опцией «отделять часть ключей запятыми».
EngMorphy – морфология английского языка.
ExtTemplateFiles – Список внешних файлов шаблона, в которых выполняется обработка
SkipUnrecognizedKeywords – применяется и описан в разделе «Авто распределение ключей по
категориям»
StoreKeywordsLogsWithMultikey – сохранять ключи в логи (link,bbcodes) в формате MULTIKEY.
Формат ссылок будет иметь вид: <a href="url">{подключ1|подключ2|подключ3}</a>
MultikeyRandPartForFilename – генерация имени файлов страниц по рандомному подключу в
режиме MULTIKEY при применении макроса [TRANSLIT]
SkipLogKeywordsRegex – исключение части ссылок из файлов ссылок в папке logs по маске. Маска
задается регулярным выражением. Если оно выполняется, то ссылка включена в файл не будет.
SQLiteDBName – имя файла SQLite базы. По умолчанию – data.db.
LogLinksForAllKeysOnPage – При настройке >1 ключа на страницу, можно включить сохранение
всех анкоров страницы в лог файлы bbcode, links. И в логи текущего сайта и в логи пакетки.
IgnorePackElementGenerationError – Игнорировать ошибки генерации пакетного задания. Если
возникает ошибка, то задание пропускается и выполняется генерация следующего задания.
Не рекомендуется применять данный флаг при включенной перелинковке пакетного задания, т.к.
возможно появление "мертвых" ссылок на неудачные элементы пакетного задания.
Консольный запуск
Консольный запуск программы:
PandoraBox.exe -console profile.xml http://www.domain.ru
Будет создан сайт по профилю profile.xml с урлом http://www.domain.ru
Пакетный запуск:
PandoraBox.exe -pack=d:\file.txt
Будет выполнена пакетная генерация из указанного файла пакета
Разные файлы ключей для каждой категории
Начиная с версии 1.1.3.8 можно указывать разные файлы ключей для каждой категории. Для этого
достаточно в выбранном файле ключей вместо ключей вписать пути к файлам ключей, например:
c:\blackseo\keys\girls\Москва.txt
c:\blackseo\keys\girls\Питер.txt
c:\blackseo\keys\girls\Рязань.txt
При таком файле ключей создастся сайт с тремя категориями, ключи для которых будут взяты из
указанных файлов.
При этом имена категорий будут взяты из имен файлов, то есть получится три категории:
Москва
Питер
Рязань
Этот режим генерации активируется автоматически если первая строка файла ключей является
файлом и этот файл найден на диске.
Начиная с версии 1.1.7.1 вместо списка путей к файлам можно указать макрос:
[DIR-(tmp)-5-7], который возьмет от 5 до 7 случайных файлов из папки tmp. Таким образом, можно
набрать случайное количество случайных файлов ключей для данной функции. Папка tmp должна
лежать внутри папки ключей. (путь data\keys\tmp)
Начиная с версии 1.1.8.2 имена файлов категорий могут содержать вариации названия категории,
например файлы могут называться:
c:\blackseo\keys\all\Хочу похудеть^Сбросить вес^Как меньше жрать.txt
c:\blackseo\keys\all\Как бросить курить^Как завязать с сигаретами^Как не сдохнуть от курева.txt
...
Как видно из примера разделителем вариантов именования категории служит символ ^
При таком подходе именования категорий в каждом сайте будет выбираться один из вариантов
именования категории. Фича совместима с макросом [DIR-(tmp)-5-7].
Разные файлы текста для каждой категории
Начиная с версии 2.16 можно указывать разные файлы текста для каждой категории. Для этого
нужно создать файлы текста под каждую категорию. Например есть категории:
Похудеть в ягодицах
Диеты для похудения
Похудеть в ногах
Тогда файлы текста должны называться так:
data\texts\Похудеть в ягодицах.txt
data\texts\Похудеть в ногах.txt
data\texts\Диеты для похудения.txt
Или в транслите:
data\texts\pohudet-v-yagoditsah.txt
data\texts\pohudet-v-nogah.txt
data\texts\dieti-dlya-pohudeniya.txt
Изменение произвольного параметра в пакетном режиме
Внимание! Не рекомендуется пытаться освоить данную функцию людям со слабой психикой,
детям и гражданам с уровнем интеллекта IQ ниже 10.
Начиная с версии 1.1.3.3 в пакетном режиме можно менять произвольный параметр для каждого
сайта.
Задание для пакетки обычно выглядит так:
3000.txt|med1.txt|0|adobe.txt|door|http://www.doorway.ru/|accomplishable|blog.xml|ftp.narod.ru|login|pass|.|999|999|4.1|6.2
3000.txt|med1.txt|0|adobe.txt|door|http://www.doorway.ru/|accomplishable|blog.xml|ftp.narod.ru|login|pass|.|999|999|4.1|6.2
Открываем файл профиля в любимом редакторе. Видим xml типа:
<PandoraBox>
<Keys>
<DeleteUsed>False</DeleteUsed>
<DensityLimit>False</DensityLimit>
<DensityLimitMax>12</DensityLimitMax>
<DensityLimitMin>8</DensityLimitMin>
<DensityMax>6</DensityMax>
…
</Keys>
…
<Structure>
…
<DynamicLinks>False</DynamicLinks>
<CatsTitles>Раздел о [CAT]</CatsTitles>
</Structure>
<Images>
…
<ImagesFilesNames>[|[TRANSLIT]|[RAND-1-999|]]</ImagesFilesNames>
<ImagesFolder>images</ImagesFolder>
<ImagesProbability>80</ImagesProbability>
<ImagesAttribs>align="right"</ImagesAttribs>
…
</Images>
…
</PandoraBox>
Для переопределения произвольного параметра нужно определить его xpath путь в шаблоне. Например вероятность
вставки картинок находится по пути //Images/ImagesProbability, а флаг динамичности ссылок
по пути //Structure/DynamicLinks
Все значения добавочных параметров нужно задавать через знак равно. Например:
//Images/ImagesProbability=20
//Structure/DynamicLinks=True
Использовать в значения знаки = / ^ нельзя, так как они разделяют строку параметров.
Разделять параметры нужно знаком крышки ^
Получается
//Images/ImagesProbability=20^//Structure/DynamicLinks=True
Ну и в строке задания все эти параметры нужно указывать в фигурных скобках в конце строки, например:
3000.txt|med1.txt|0|adobe.txt|door|http://www.doorway.ru/|accomplishable|blog.xml|ftp.narod.ru|login|pass|.|999|999|4.1|6.2{//Images/ImagesProbability
=20^//Structure/DynamicLinks=True}
3000.txt|med1.txt|0|adobe.txt|door|http://www.doorway.ru/|accomplishable|blog.xml|ftp.narod.ru|login|pass|.|999|999|4.1|6.2{//Images/ImagesProbability
=40^//Structure/DynamicLinks=False}
При желании проверить правильно ли заполняются таким образом профили можно в файлах по пути аля
data\logs\doorway.ru\profile.xml после генерации.
Если что-то не понятно, то прочтите этот блок текста еще раз, если все понятно, то break;
Функция «запуск по завершению»
Начиная с версии 1.1.9.7, настройка функции упрощена. Для запуска заливки файлов на хостинг
достаточно указать путь к программе UploadManager.
Описание настройки данной функции для версий менее 1.1.9.7:
По завершению генерации пакетного задания можно запустить произвольную программу,
например заливку файлов на хостинг. Для заливки файлов можно использовать программу
UploadManager. Параметры у программы следующие:
/unzip=файл_пакетки - это будет заливка с распаковкой с передачей файла пакетного задания
/upload=файл_очереди_файлзиллы - это будет заливка пофайлово с передачей файла файлзиллы
параметр /setroot777=0 или /setroot777=1 - значит выставлять ли права 777 на корневую папку
перед заливкой
Так как при каждой генерации имя пакетки уникальное (чтобы не затирать другие файлы) и имя
очереди файлзиллы тоже уникальное (тоже чтобы не затирать другие файлы), то их имена при
пакетной генерации программа запоминает в макросах:
[PACKFILE] - имя файла пакетного задания
[ZILLAFILE] - имя файла очереди файлзиллы
Использовать их можно по тому же принципу: в окне настроек функции "запуск по завершению"
указываем запускаемую программу, например c:\uploadmanager\uploadmanager.exe
а параметры:
либо /unzip=[PACKFILE] - это будет заливка с распаковкой с передачей файла пакетного задания
либо /upload=[ZILLAFILE] - это будет пофайловая заливка с передачей файла файлзиллы
Разделение пакетного задания на части
При необходимости существует возможность разделения большого пакетного задания на более
мелкие части. Например, можно разделить задание из 1000 строк на 5 заданий по 200 строк в
каждом. При этом каждое подзадание будет являться независим и будет иметь все атрибуты
обычного пакетного задания, то есть будет сгенерирован пакетный файл проекта хрумера в
пределах подзадания, будет создана папка логов пакета в пределах подзадания, будет сделана
перелинковка в пределах подзадания.
Для разделения задания нужно использовать ключевое слово “-next-” без кавычек там, где
требуется разделение. Пример:
111.txt|m1.txt|0|ad.txt|E:\2\[HOST]|http://host1.nm.ru/|shab|blog.xml|ftp.nm.ru|host1|ol3JrupnFKTa|.|999|999|4.1|6.2
111.txt|m1.txt|0|ad.txt|E:\2\[HOST]|http://host2.nm.ru/|shab|blog.xml|ftp.nm.ru|host2|w78S26j44z2e|.|999|999|4.1|6.2
...
-next...
111.txt|m1.txt|0|ad.txt|E:\2\[HOST]|http://host999.nm.ru/|shab|blog.xml|ftp.nm.ru|host999|ol3JrupnFKTa|.|999|999|4.1|6.2
111.txt|m1.txt|0|ad.txt|E:\2\[HOST]|http://host1000.nm.ru/|shab|blog.xml|ftp.nm.ru|host1000|w78S26j44z2e|.|999|999|4.1|6.2
Ключевое слово -next- можно использовать неограниченное количество раз.
Авто сабдомены
Опция авто сабдоменов работает в двух режимах:

При заполнении поля "название папок категорий" каждая папка становится сабдоменом.
Для корректной работы опции на хостинге нужно включить автоподдомены по
вложенным папкам. При этом все обращения по ссылкам sub.domain.ru автоматически
хостингом перенаправляются на domain.ru/sub

При генерации без категорий сабдоменами становятся ключи сайта. Для корректной
работы опции на хостинге нужно включить режим Wildcard DNS. Это можно сделать
самому если есть доступ к редактированию DNS - нужно в "A" записи DNS выставить *.
Данный режим на многих хостингах уже включен. В случае ISP нужно включить для домена
псевдоним *.домен.ру примерно так: http://pandoraboxx.ru/asdispmgr.png После этого
нужно сгенерировать или создать руками файл .htaccess вида:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.* [NC]
RewriteCond %{HTTP_HOST} ^(.*).{REPLACEMENT-(www.)-()}[HOST]{/REPLACEMENT}$
RewriteRule ^ %1.php
После обработки макросами файл примет вид:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.* [NC]
RewriteCond %{HTTP_HOST} ^(.*).door.ru$
RewriteRule ^ %1.php
При этом все обращения по ссылкам sub.domain.ru будут перенаправлятся на
domain.ru/sub.php
Расширение .php можно заменить на свое, например так: RewriteRule ^ %1.html
Проекты Xrumer
Папка для шаблонов проектов – data\xrum
Сохраняются готовые проекты в файл data\logs\ваш_сайт\xrumer.xml
Выходная кодировка файлов проекта – UTF8
Файл шаблона обрабатывается всеми макросами программы, но также существуют специфичные
макросы для указания файлов ссылок и ключей:
[XBBCODES] – путь к файлу BBCode. Применение: #file_links[[XBBCODES],1,S]
[XLINKS] – путь к файлу ссылок.
[XURLS] – путь к файлу урлов.
[XKEYFILE] – путь к файлу ключей. Подойдет для поля Subject1. Например #file_links[[XKEYFILE],1,S]
Проекты генерируются на каждый сайт, если опция включена.
Каждое имя проекта уникально, так как далее они копируются в 1 папку хрумера
Проекты Xrumer в пакетном режиме
Для генерации проектов в пакетном режиме нужно создать шаблон проекта задания в папке
data\xrum и назвать файл «pack.xml». Если этого файла нет, то проект создан не будет.
Плагины
Генератор расписаний для Xrumer
1. Нужно расставить галки на файлах проектов в желаемом порядке.
2. Указать папку Projects хрумера
3. Нажать кнопку. При этом будет перезаписан файл расписания, скопированы файлы
проектов, поправлены файлы config.ini и xuser.txt.
Все файлы проектов имеют уникальные имена, поэтому перезаписаны не будут.
В файлах config.ini и xuser.txt правятся настройки расписания: текущий шаг сбрасывается
на 0 и расписание выключается если было включено.
После этого просто запускаем хрум, выбираем базу. Открываем расписание и включаем
его. Процесс пошел.
Пакетное добавление доменов в ISP панель
1. Указать овнера, найти созданных в панельке овнеров можно на странице «Пользователи»:
2. Указать IP сервера
3. Указать логин/пароль и путь к панельке
4. Указать список доменов для пакетного добавления
5. Нажать «Добавить домены»
Для более точной настройки добавления доменов можно поправить файл ISPAddDomain.txt
Пинг при отложенной публикации
При использовании отложенной публикации возможно включении функции пинга генерируемого
сайта в поисковые системы.
Вопросы – ответы по функции пинга.
Как расширить список сервисов для пинга?
Пингуемые сервисы нужно добавить в файле pinger.php в переменную $pingservices.
В поставляемом с программой файле указаны сервисы (гугл и яндекс):
$pingservices = array(
"http://ping.blogs.yandex.ru/RPC2",
"http://blogsearch.google.com/ping/RPC2"
);
Где генерируемый сайт хранит информацию о том, что уже было пропинговано?
Генерируемый сайт пингует сервисы только при появлении новых опубликованных страниц, а
историю о том, что уже было пропинговано хранит в файле pinged.php. На этот файл должны быть
права на запись.
Будет ли работать пинг если RSS не включен?
Будет, пинговаться в таком случае будет главная страница сайта. Но лучше все-таки включать RSS.
Что такое динамический RSS?
Опция динамического RSS позволяет показывать в RSS ленте последние опубликованные записи,
при публикации материалов лента будет меняться и отображаться последние записи. Элементы в
ленте не содержат текста, присутствует ссылка, наименование и время.
Проверка макросов шаблона
Для проверки макросов шаблона нажать на ссылку «Шаблон» на закладке «Основные настройки».
При этом выполняется тестовая короткая генерация по текущему шаблону. В полученном
результате генерации проверяется наличие ошибок, и в случае их нахождения выводится диалог
вида:
Синей рамкой выделяется тип страницы с найденной ошибкой, красной рамкой выделяется
макрос, записанный с ошибкой.
Кнопками Предыдущая ошибка/Следующая ошибка можно переходить по списку ошибок и
исправлять их в шаблоне.
Если ошибок нет, то об этом выводится соответствующее сообщение.
Автораспределение ключей по категориям
Для включения автораспределения ключей по категориям нужно:



Включить функцию на закладке «Структура»
Применить стоп слова в файле категорий
Оттестировать распределение в диалоге тестирования, доступном по кнопке «Подробнее»
Стоп слова записываются со знаком минус перед словом. Таких слов можно вписать несколько.
Пример:
- Скачать
- Похудеть
Стоп слова лишь указывают, как обрабатывать файл категорий при авто распределении, сами они
не являются категориями и в списки не попадают.
Нераспознанные ключи добавляются в случайную категорию.
Полный пример списка категорий:
-Похудеть
-Похудение
Похудеть в ягодицах
Диеты для похудения
Похудеть с помощью...
Похудеть в ногах
Похудеть срочно
Средства для похудения
Препараты для похудения
Раздельное питание
Способы похудания
Худеем вместе
Разгрузочный день
Уникализация CSS стилей в файлах стилей и файле шаблона
При необходимости существует возможность включения переименования css классов и id в
файлах стилей. Для включения функции на закладке "Основные настройки" установить флажок
"Поменять css классы".
Функция заменит css классы и id в файлах .css и соответственно изменит css классы в файле
шаблона.
Например в .css файле описан стиль:
.post {
margin-bottom: 15px;
}
И в шаблоне применятся как
<div class="post">
<h2 class="title">Добро пожаловать</h2>
<p class="meta">Мы рады приветствовать вас на нашем сайте</p>
[FREETEXT-30-70/p]
</div>
После применения функции класс изменится на набор символов(по алгоритму макроса
[GLASSOGLAS]) :
.telim {
margin-bottom: 15px;
}
И в шаблоне применятся как
<div class="telim ">
<h2 class="title">Добро пожаловать</h2>
<p class="meta">Мы рады приветствовать вас на нашем сайте</p>
[FREETEXT-30-70/p]
</div>
При необходимости исключения блока из переименований нужный блок можно обозначить
макросом:
{NOCSSRENAME}Исключаемый из переименований блок HTML{/NOCSSRENAME} - блок не будет
вырезан или изменен, он только ограничит рамки исключения из переименований. Сами теги
макроса будут удалены. Все найденные в блоке css классы будут исключены из переименований,
включая их повторы вне блока. Например "meta" не будет заменен, а "zamena" - будет :
{NOCSSRENAME}
<p class="meta">Мы рады приветствовать вас на нашем сайте</p>{/NOCSSRENAME}
<p class="meta">Тест1</p>
<p class="zamena">Тест2</p>
Начиная с верии 2.6 макрос {NOCSSRENAME} распространяется и на переименование id.
При необходимости выполнить переименования в jQuery <script> блоке можно применить блок
{JQUERYRENAME}{/JQUERYRENAME}.
Пример:
{JQUERYRENAME}<script>
$(".class1").show();
$("#id1").show();
</script>{/JQUERYRENAME}
При этом класс class1 и идентификатор id1 будут переименовы согласно переименованиям в
файле шаблона, если фукцния переименований включена.
Автогенерация пакетных заданий
При необходимости существует возможность включения функции автогенерации пакетных
заданий. Предполагается, что параллельно с Пандорой запущен скрипт или программа
(например, ZennoPoster), регистрирующая аккаунты. Зарегистрированные аккаунты эта
программа пишет в файл.
Тогда в Пандоре может быть включен режим автогенерации, указаны параметры:

Размер пачки - Числовой параметр, указывающий размер пачки для пакетной генерации.
Файл со строками пакетного задания пойдет в генерацию не раньше накопления пачки
указанного размера

Входной файл со строками пакетного задания - Путь к файлу со строками пакетного
задания в формате Пандоры

Формат строк во входном файле. Поддерживается два формата строк:
o В формате пакетного задания Пандоры
o В коротком формате: FTP HOST|FTP LOGIN|FTP PASSWORD|FTP FOLDER|УРЛ САЙТА

Профиль генерации – только при выборе короткого формата. (Примечание: Папка
сохранения файлов в профиле должна быть указана с использованием макроса [HOST])
Включение и настройка опции выполняется в меню «Дополнительные функции»
Также в функции «Запуск по завершению» можно дополнительно выбрать режим «Дописать в
файл» и указать файл, из которого в автоматическом режиме заливщик будет брать задания и
выполнять заливку. Опцию автозаливки планируется реализовать в программе MultiLoader.
Алгоритм работы режима автогенерации:

При накоплении пачки указанного размера из входного файла отщепляется пачка нужного
размера

Генерируется пакетное задание по аккаунтам пачки

Пакетное задание пачка сохраняется в папку automode

Выполняется пакетная генерация сайтов

Если включена функция «автозапуска по завершению», то она выполняется

История работы режима автогенерации записывается в лог файл в папке automode(log.txt)
Схемы перелинковки сайтов при пакетной обработке
Начиная с версии 2.0.8, добавлены схемы перелинковки доров в пакетном режиме:






Звезда: ссылаются все на всех (кроме самих на себя)
Ёлка: на первый ссылается два, на каждый из них тоже два
Пирамида: на первый ссылается четыре, на каждый из них тоже по четыре
Кольцо: первый ссылается на второй, второй на третий, ..., последний на первый
Двойное кольцо: первый ссылается на второй и третий, второй на третий и четвертый, ...,
последний на первый и второй
Гиперкуб: многомерный куб - http://pandoraboxx.ru/hypercube.jpg
В случае гиперкуба число сайтов для генерации должно быть равно или немного больше
значений: 8, 16, 32, 64, 128, 256, то есть степеней двойки.
Выбор схемы линковки осуществляется на закладке «пакетная генерация» по ссылке «схема»
Также в версии 2.0.8 добавлена возможность при линковке с указанными папками выбрать
вероятность применения такой ссылки вместо ссылки на сайты текущей пачки генерации. Для
этого нужно открыть диалог линковки с указанными папками и указать вероятность:
В версии 2.12 добавлена возможность ограничить число аксепторов перелинковки для схемы
Звезда. Настройка задается для профиля на закладке «Настройки макросов». Значение задаетс в
процентах, поэтому варьируется от 0 до 100.
Клоакинг
Начиная с версии 2.18, доступен клоакинг из шаблона. Необходимый для работы скрипт
подключается автоматически.
Скрипт клоакинга находится в файле «cloaking.php». При желании может быть изменен.
Макросы:
{FORHUMAN} ..html.. {/FORHUMAN} - блок для людей
{FORBOT} ..html.. {/FORBOT} – блок для ботов
Если один из этих макросов найден в шаблоне, то клоакинг будет задействован автоматически.
Настройки в файле cloaking.php:
$check_lang – проверка языка
$check_referer – проверка наличия реферера
$check_useragent – проверка юзерагента
$check_host – проверка хоста, полученного по ip
$check_ip – проверка ip по файлу bots.txt
$check_ip_file – путь к файлу bots.txt
$check_cookie – отправлять ли куки для js проверки
Пример js проверки куки, сохраненной параметром $check_cookie:
function getCookie(name) {
var value = "; " + document.cookie;
var parts = value.split("; " + name + "=");
if (parts.length == 2) return parts.pop().split(";").shift();
}
if (getCookie('js')=='on') {
//код вывода фрейма или редирект
//...
}
Download