использование собственных наборов изображений

Для использования собственных наборов изображений для наполнения инфоблока, создайте папку в папке /bitrix/wizards/grain/iblock.flooding/data/images и поместите в нее изображения. При выборе соответствующей опции в мастере заполнения инфоблока, изображения будут выбраны из папки случайным образом.

Использование собственных текстов

Чтобы использовать собственный текст для наполнения инфоблока, добавьте файл php в папку /bitrix/wizards/grain.flooding/data/texts

Файл должен быть следующего формата:

$paragraphs = array();

$paragraphs[] = <<<EOT
Наконец всё переменилось. Генерал умер. Смерть его была довольно оригинальная. Бывший вольнодумец, атеист струсил до невероятности. Он плакал, каялся, подымал образа, призывал священников. Служили молебны, соборовали. Бедняк кричал, что не хочет умирать, и даже со слезами просил прощения у Фомы Фомича. Последнее обстоятельство придало Фоме Фомичу впоследствии необыкновенного форсу. Впрочем, перед самой разлукой генеральской души с генеральским телом случилось вот какое происшествие. Дочь генеральши от первого брака, тетушка моя, Прасковья Ильинична, засидевшаяся в девках и проживавшая постоянно в генеральском доме, — одна из любимейших жертв генерала и необходимая ему во всё время его десятилетнего безножия для беспрерывных услуг, умевшая одна угодить ему своею простоватою и безответною кротостью, — подошла к его постели, проливая горькие слезы, и хотела было поправить подушку под головою страдальца; но страдалец успел-таки схватить ее за волосы и три раза дернуть их, чуть не пенясь от злости. Минут через десять он умер. Дали знать полковнику, хотя генеральша и объявила, что не хочет видеть его, что скорее умрет, чем пустит его к себе на глаза в такую минуту. Похороны были великолепные — разумеется, на счет непочтительного сына, которого не хотели пускать на глаза.
EOT;

$paragraphs[] = <<<EOT
Словом, Фома, от излишнего жара, зарапортовался. Но таков был всегдашний исход его красноречия. Разумеется, кончилось тем, что генеральша, вместе с своими приживалками, собачонками, с Фомой Фомичом и с девицей Перепелицыной, своей главной наперсницей, осчастливила наконец своим прибытием Степанчиково. Она говорила, что только попробует жить у сына, покамест только испытает его почтительность. Можно представить себе положение полковника, покамест испытывали его почтительность! Сначала, в качестве недавней вдовы, генеральша считала своею обязанностью в неделю раза два или три впадать в отчаяние при воспоминании о своем безвозвратном генерале; причем, неизвестно за что, аккуратно каждый раз доставалось полковнику. Иногда, особенно при чьих-нибудь посещениях, подозвав к себе своего внука, маленького Илюшу, и пятнадцатилетнюю Сашеньку, внучку свою, генеральша сажала их подле себя, долго-долго смотрела на них грустным, страдальческим взглядом, как на детей, погибших у такогоотца, глубоко и тяжело вздыхала и наконец заливалась безмолвными таинственными слезами по крайней мере на целый час. Горе полковнику, если он не умел понять этих слез! А он, бедный, почти никогда не умел их понять и почти всегда, по наивности своей, подвертывался, как нарочно, в такие слезливые минуты и волей-неволей попадал на экзамен. Но почтительность его не уменьшалась и наконец дошла до последних пределов. Словом, оба, и генеральша и Фома Фомич, почувствовали вполне, что прошла гроза, гремевшая над ними столько лет от лица генерала Крахоткина, — прошла и никогда не воротится. Бывало, генеральша вдруг, ни с того ни с сего, покатится на диване в обморок. Подымется беготня, суетня. Полковник уничтожится и дрожит как осиновый лист.
EOT;

Чтобы создать файл, например, из текста книги, можно воспользоваться подобным скриптом:

<?
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
$APPLICATION->SetTitle("Создание файла с текстом для наполнения инфоблока");
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_after.php");

$name = "dostoevsky-selo";

$filename = $_SERVER["DOCUMENT_ROOT"]."/test/".$name.".txt";
$handle = fopen($filename, "r");
$text=fread($handle, filesize($filename));
fclose($handle);

$paragraphs = preg_split("/[\r\n]+/",$text);

$php = "<?php\n\n\$paragraphs = array();\n\n";

foreach($paragraphs as $paragraph) {
	$paragraph = preg_replace("/^[\s\t …\r\n]+/","",$paragraph);
	$paragraph = preg_replace("/[\s\t …\r\n]+$/","",$paragraph);
	if(!preg_match("/^[АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ]+/u",$paragraph))
		continue;
	if(substr($paragraph,0,1)=="—")
		continue;
	if(substr($paragraph,-1)!==".")
		continue;
	$phrase_count = 0;
	$first_phrase_word_count = 0;
	$phrases = preg_split("/\.+/",preg_replace("/[\.]+$/","",$paragraph));
	$phrase_count = count($phrases);
	$first_phrase = preg_split("/[\s \r\n]+/",$phrases[0]);
	$first_phrase_word_count = count($first_phrase);
	if(preg_match("/[\;]+/",$phrases[0]))
		continue;
	if($phrase_count<=7)
		continue;
	if($first_phrase_word_count>10 || $first_phrase_word_count<2) // пропускаем только параграфы, в которых количество слов в первом предложении от 2 до 10, это важно для корректного заполнения названий элементов инфоблоков
		continue;
	echo "<hr>";
	echo $phrases[0]."|".$phrase_count."|".$first_phrase_word_count."|".$paragraph;
	$php .= "\$paragraphs[] = <<<EOT\n".$paragraph."\nEOT;\n\n";
	
}

$filename = $_SERVER["DOCUMENT_ROOT"]."/test/".$name.".php";
$handle = fopen($filename, "w");
fwrite($handle, $php);
fclose($handle);
?>
<?require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php");?>
Главная   ·   Модули для 1С-Битрикс   ·   Типовые услуги   ·   Форум   ·   Блог   ·   Контакты
Рейтинг@Mail.ru