Пишем плаґін „Цитатник“

Після питання Фамуляка Андрія на Райдужному задумався про використання мого плаґіну „народ скаже — як зав’яже“ шановними блоґерами не лише в якості мотивуючої частини майстерні, а й для мотивації користувачів чи виведення своїх улюблених цитат. Отож перш ніж почати переписувати плаґін під наші потреби, скористаймось наявним інструментарієм.

Для виводу цитати з плаґіну „Народ скаже — як зав’яже“ у ваш шаблон вставте в потрібне місце код
<? hello_dolly(); ?>
Це виведе вам цитату у вигляді <p id ='dolly'>$цитата</p> Таким чином ми маєм можливість налаштовувати зовнішній вигляд цитати за допомогою css.

Для виводу наших власних цитат ми трішки спростимо існуючий плаґін. Створимо файл і назвемо його, скажімо, quote.php. Тепер вкажемо дані про плаґін:
<?php /*
Plugin Name: Цитатник
Plugin URI: http://ged.org.ua/2009/08/pyshem-plagin-cytatnyk/
Description: Виводить цитати в довільномі місці.
Author: G3D
Version: 1.5.1
Author URI: http://ged.org.ua/ */

Тепер наш плаґін буде правильно ідентифіковано WordPress’ом, тож перейдем до цитат. Список цитати формується з текту, кожний новий рядок якого ( клацнутий enter) — нова цитата:
function quote_get_lyric() {
$lyrics = "цитата
цитата2
цитата3";
$lyrics = explode("\n", $lyrics);

а тепер виведем їх у випадковому порядку:
return wptexturize( $lyrics[ mt_rand(0, count($lyrics) - 1) ] ); }
Таким чином у нас є все необхіден, щоб завершити функцією виведення цитати:
function quote() {
$chosen = quote_get_lyric();
echo "<p id='quote'>$chosen</p>"; }
?>

Тепер залишилось викликати вивід цитати за допомогою <?php quote(); ?>
Ось вам quote.php цього блоґу:

Завантажити (zip)

Схожі дописи:

  1. 13 запитань v 0.1.2
  2. WordPress 2.7 RC1

2 Responses

  1. Дякую, випадково наткнувся на твій блоґ, і сильно здивувався, коли побачив своє ім'я – дякую за плаґін

XHTML дозволено: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">