От нечего делать и практики ради - решил написать небольшой скрипт который грабит записи с БОРа и пихает их в базу. Скрипт был написан где-то за пол часа и представляет из себя следующую штуку:

  • берется контент с главной страницы
  • выбираются все записи (обычно их там 95 на странице)
  • каждая запись проверяется есть ли она в базе по айди, который указан там на сайте
  • если записи нет, то добавляем её

Данный скрипт нужно вешать на cron с интервалом - 2-3 раза в день, при этом с каждым днем ваша собственная база цитат будет автоматически наращиваться;)

Структура теблицы БД, её нужно создать вручную:

CREATE TABLE `bash_quotes` (
`id` int(11) unsigned NOT NULL auto_increment,
`bash_id` int(11) NOT NULL,
`text` longtext NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=96 ;

Таблица должна быть с кодировкой UTF8, иначе причется патчить скрипт.

Можно скачать дамп базки в которой уже есть немного цитат.

Так как скрипт сам по себе никакой особой пользы не несет, то в нагрузку к нему был разработан плагин для Wordpress, который доабвляет случайные цитаты в тело сообщения, либо в указанное в темплейте месте.

Для того чтобы вывести запись в теле сообщения, нужно добавить в любом месте поста код [ BASH.QUOTE], этот код будет автоматически заменен случайной записью из БОРа. Пример использования вы можете посмотреть в конце этого поста - при обновлении страницы прикол будет меняться.

Есть три момента:

  1. [ BASH.QUOTE] заменяется только одной записью при загрузке страницы, т.е. если вы поставите 5 штук [ BASH.QUOTE] на странице, то все они будут заменены одним и тем же приколом;
  2. Выдача может повторяться - так как это рандом, а не шаффл;
  3. Ну и последнее -между [ и BASH.QUOTE] пробел не нужен (если бы я написал без пробела - везде в тексте торчали бы приколы :) )

Второй способ встроить цитату, это добавить код <?php bash_rand_quote() ?> в любое месте шаблона. Здесь ситуация иная - каждый такой кусок кода будет заменен своей случайной записью из базки. Пример этого можно посмотреть на этом же блоге, в правом нижнем углу заголовок “bash.live”, для этого редактировался файл footer.php в папке шаблона.

Исходники обоих скриптов можно скачать одним архивом: bash.zip.

В архиве два файла:

bash_grabber.php - граббер который вешаем на крон, в нем нужно настроить доступ к БД

bash_org_ru.php - плагин для Wordpress - небходимо скопировать в папку plugins и активировать в админке.

——————————————

Прошел популярный сейчас тест (слабо, думал будет больше):

——————————————

Случайная цитата с bash.org.ru:

Витёк: как отвинтить винт?
tr1Xen: как отматерить материнку?

Шлак, в топкуКакахаПойдетИнтересноЭто 5, спасибо (Еще никто не проголосовал, стань первым!)