Нет, я не о чтении мыслей прямо из мозга. Хотя было бы интересно.
Сегодня (перед написанием этого поста) я сделал в блоге ротатор своих (умных, конечно!) мыслей. У меня уже давно накопилось много собственных высказываний (ну и самомнение, да?), которыми я был бы не прочь поделиться с окружающими. Сейчас сел и написал ротатор, который и хочу предложить Вам. Это не плагин, но на халяву.
Ротатор состоит из двух частей – кода ротации сообщений (в данном случае – моих мыслей [...звучит жутко]) и файла с фразами для ротации. Пусть на одну мысль будет отведена одна строка, то есть разделителем мыслей служит символ переноса строки (как мы знаем это \n).
Прямо в код шаблона WordPress (или другого движка)*, где мы хотим выводить мысли мы пишем следующее:
<?php
$file = fopen ("mind.txt", "r");
if ($file){
$minds = "";
while (!feof ($file)) {$minds .= fread ($file, 256);}
$mind = explode ("\n", $minds);
$say = $mind[rand (0, count ($mind) - 1)];
echo iconv ('UTF-8', 'CP1251', $say)."<br>";
fclose ($file);
}
?>
В корень сайта кладем файл с мыслями (mind.txt).
Просто, но работает. Сначала мы открываем файл (см. код) для чтения, потом в $minds читаем все содержимое файла (в цикле). Дальше делим полученную длинную строку на массив с помощью explode (разделитель – перенос строки). Потом выбираем одну фразу случайным образом и записываем ее в $say. Дальше преобразовываем кодировку к UTF8** и выводим фразу. Закрываем файл.
Чтобы было понятнее – я прописал этот код в шаблоне в файле header.php там, где хотел видеть случайные фразы. Если хотите оформить с помощью CSS, сделайте что-то вроде:
echo "<span class=someclass>".iconv
('UTF-8', 'CP1251', $say)."</span><br>";
…и оформляйте уже класс someclass.
Вот архив с исходниками.
* не все движки поддерживают код прямо в шаблонах, в этих случаях придется приспосабливать данный код самостоятельно
** это потому, что у меня блог в UTF8, у Вас он может быть и в другой кодеровке. Если он у Вас в CP1251, функция iconv не нужна
Оставьте свой комментарий
|
08.01.2009 в 4:07 пп
И еще, если я не ошибаюсь, то это функция, зачем возле нее знак $ ?
08.01.2009 в 4:13 пп
09.01.2009 в 8:53 пп
09.01.2009 в 9:03 пп
12.01.2009 в 10:16 пп
13.01.2009 в 5:10 пп
14.01.2009 в 9:41 пп
Я не проггер, – не понимаю, что да как, – но плагин такой сделать, – это сложно??? Я б заюзал…
15.01.2009 в 2:16 дп
$file = file(‘mind.txt’);
if ($file) {
echo iconv(‘UTF-8′, ‘CP1251′, $file[rand(0, count($file))]).»;
}
?>
15.01.2009 в 2:56 дп
15.01.2009 в 8:38 пп
16.01.2009 в 1:59 дп
16.01.2009 в 6:36 пп
16.01.2009 в 7:40 пп
18.01.2009 в 12:42 дп
18.01.2009 в 1:43 дп
18.01.2009 в 5:26 пп
ладно возможно я просто любитель коротких решений.