Выпуск 10. Блог-клиент. Поиск. Полезные плагины
Сегодня вы узнаете, что такое блог-клиент, мы поговорим о проблеме поиска в WordPress и в конце я расскажу об использовании некоторых плагинов.
Блог-клиент
Блог-клиенты - это специальные компьютерные программы, с помощью которых можно удаленно управлять своим сайтом. Существует несколько технологий, которые предоставляют такую возможность. Одна из них называется XML-RPC (Remote Procedure Call - удаленный вызов процедур с помощю языка запросов XML). То есть, грубо говоря, XML-RPC должны поддерживать компьютерная программа и сам сайт. WordPress, конечно же, входит в их число. ![]()
Что же делает блог-клиент?
Он просто формирует специальный запрос (например содержащий требование вывести все заголовки записей) и отправляет его на сайт по специальному адресу. Сайт, получает этот запрос, обрабатывает его и отправляет готовый результат. Таким образом и происходит взаимодействие между ними.
Понятно, что с помощью компьютерной программы несколько проще работать, скажем, с текстом. То есть можно, например подключить проверку орфографии, встроить дополнительные функции: изменить регистр, преобразовать в html-код, откорректировать знаки препинания, удалить лишние пробелы и т.д. Реализовать все это с помощь браузера (как это и происходит через админ-панель), довольно затруднительно.
Ну и кроме этого, блог-клиент не использует трафик - только во время передачи/приема данных. Даже когда вы делаете предпросмотр, всё происходит прямо на вашем компьтере.
Говорить о скорости работы просто не приходится - блог-клиент работает гораздо быстрее web-интерфейса.
-Какие же возможности предоставляет блог-клиент? В Интернете вы найдете разные программы, которые способны работать с WordPress, но я буду описывать свою версию, поскольку она обладает рядом уникальных возможностей.
- Редактирование, создание записей.
- Возможность работы не только с сообщениями (post), но и постоянными страницами (page).
- Вы можете изменить статус записи: обычное (post), постоянная страница (page) или черновик (draft). (Такого нет даже в стандартном WordPress!)
- Возможность указать синоним ссылки (post slug).
- Визуальное rtf-форматирование.
- Панель быстрой вставки, любое количество элементов, панель избранных кодов.
- Готовый набор для вставки основных кодов, HTML и спецсимволов.
- Дополнительный набор из 188 смайликов. Вы можете добавить свои.
- Мастер вставки изображений. Полностью настраиваемые параметры.
- Создание миниатюр.
- Автоматическая загрузка файлов на сервер.
- Автоматический backup записей.
- Множество функций для работы с текстом.
- Предпросмотр (шаблон предпросмотра можно менять).
- Встроенная таблица символов.
- Выбор цвета.
- Данные передаются в сжатом виде, что позволяет уменьшить их объем.
- Получение списка уже загруженных файлов.
- Поддержка любой кодировки блога.
Примерно год назад, когда я впервые столкнулся с WordPress, мне ужасно не понравилась его админ-панель. Это сейчас она немного "облагородилась", но раньше работа с ней приносила одни мучения (для меня
). Существуют даже специальные плагины, которые позволяют изменить ее внешний вид, но все равно от web-интерфейса никуда не денешься...
Конечно же я пробовал использовать различные блог-клиенты других разработчиков, но все равно находились какие-либо минусы, которые делали работу с программой либо трудной, либо невозможной.
Все это подтолкнуло меня к написанию своего блог-клиента. А поскольку я постоянно сам с ним работаю + работают мои клиенты, то постепенно она трансформировалась в текущую, довольно мощную версию.
Так, что если вы тоже хотите попробовать работать с WordPress с помощью блог-клиента, то можете его скачать с моего сайта:
Поиск в WordPress
Поднять тему поиска меня попросил Хусамов Сухроб, за что ему большое спасибо
.
Действительно, если вы воспользуетесь поиском в WordPress'е, то можете обнаружить, что он либо регистрозависим, либо вообще неверно работает. Проверьте это на своем сайте и, если это так, то этот текст для вас
.
Сразу скажу в чем дело - в неправильной кодировке блога. А именно: кодировка блога должна быть той же, что и кодировка базы данных. Если они разные, то проблемы вам гарантированы.
Чтобы вам не запутаться попробую по-порядку.
Определите (узнайте) версию MySQL на сервере.
1. Если версия младше 4.1, то вам нужно узнать у хостера в какой кодировке работает MySQL. Если у вас русскоязычный хостинг, то скорее всего кодировка будет cp1251-general_ci - это Windows-1251 регистронезависимая. Всё, что вам нужно сделать, так это использовать эту же кодировку (WINDOWS-1251) и на своем блоге. Если вы хотите иметь полноценный поиск и нормальную сортировку по алфавиту, то забудьте об UTF8.
2. Если у вас версия 4.1 или старше, то у вас есть некоторое поле для маневра. Дело в том, что в этих версиях MySQL появилась команда SET, которая позволяет "на-лету" устанавливать кодировку. То есть вы можете установить кодировку для сервера и клиента и, в завивимости от этих значений, сервер будет конвертировать данные и отдавать их клиенту, т.е. вашему сайту.
Сразу предупреждаю, что перевод блога из одной кодировки в другую дело не из простых. Поэтому если вы не уверены, то лучше попросите помощи у более знающего человека.
Для перевода базы данных в UTF8 сделайте следующее. Откройте файл wp-includes/wp-db.php. В самом конце файла, после строчки:
То есть мы рассматриваем ситуацию, когда ваш блог работает в UTF-8, а база данных в Windows-1251.
- $wpdb = new wpdb(DB_USER, DB_PASSWORD, DB_NAME, DB_HOST);
Допишите:
- $wpdb->query("SET NAMES 'utf8'");
- $wpdb->query("SET CHARACTER_SET_CLIENT='utf8'");
(Если у вас версия WordPress с моего сайта, то там уже есть эти строчки, просто удалите перед ними комментарии.)
Если после этого текст на вашем блоге стал нечитаемым, то не пугайтесь, так и должно быть - ваша база поддерживает нужную кодировку. Следующий этап - нужно переконвертировать базу данных.
.Теоретически существует еще возможность "поиграть" с разными параметрами SET. В моей версии WordPress в конце файла wp-db.php присутствуют эти строки. Попробуйте убрать комментарии и менять названия кодировки - может, что-нибудь получится.
Есть два способа это сделать. Первый - самый безопасный. Вначале сохранить старые тексты по отдельным файлам, после этого изменить кодировку, как описано выше, и после заменить ручками тексты. Если у вас немного записей, то это не составит большого труда. Правда вам придется заново обновить и параметры блога, название ссылок и рубрик, то есть там, где использовался русский текст.
Второй способ более сложный, зато позволяет переконвертировать всё сразу.
Для этого нужно зайти в phpMyAdmin и сделать дамп таблиц WordPress.
Если вы не знаете, что такое phpMyAdmin и что такое дамп, то этот способ точно не для вас!
Сохраните этот дамп на свой компьютер и смените расширение на .txt. После этого откройте его с помощью Internet Explorer'a и подберите кодировку, при которой русский текст будет читабельным. После этого сохраните этот файл и укажите нужную кодировку, например UTF-8.
Теперь откройте этот файл, например Блокнотом, и проверьте указана ли кодировка при создании таблиц, например:
- ENGINE=MyISAM DEFAULT CHARSET=cp1251;
Если такие строки встречаются, то измените указанную кодировку. После этого загрузите дамп обратно в базу.
Теперь несколько важных замечаний.
1. Если описанные выше процедуры вам не понятны, не выполняйте смену кодировки!
2. Описанные выше процедуры касаются только изменения кодировки базы данных, а не самого блога! То есть вам не нужно в опциях менять кодировку блога.
3. Обязательно сохраните резервную копию дампа - в случае неудачи, вы всегда сможете восстановить свой блог. Также, на всякий случай, можете сделать резервирование через админ-панель WordPress'а.
Полезные плагины
Теперь перейдем к более приятным вещам
. Начнем рассматривать некоторые плагины.
"Сноски"
Этот плагин позволяет автоматически создавать сноски в конце текста. Например:
- Браузер FireFox ((Лучший Интернет-браузер)) загрузили уже 200 миллионов раз!
Теперь у нас появится текст:
Браузер FireFox1 загрузили уже 200 миллионов раз!
- Лучший Интернет-браузер
При этом плагин автоматически создает нумерацию сносок. Также он позволяет настроить оформление и признак сноски. К слову сказать, комбинации " ((" и "))" не совсем удачны, поскольку в тексте частенько встречаются, не говоря уже про синтаксис PHP. Я бы все-таки изменил их, например на " [[" и "]] ".В любом случае выбор за вами, а изменения можно внести прямо в файле плагина.
Также поддерживаются "стандартные" сноски: <footnote> ... </footnote>
Качаем отсюда: http://www.elvery.net/
"Облако" рубрик
Обычно рубрики располагаются в виде списка, то есть последовательно в древовидной структуре. Однако, это вечашний день
. Сейчас модно использовать т.н. облака. "Облако" состоит из названий рубрик, причем, чем больше в рубрике записей, тем большим размером она отображается. Грубо говоря, можно сразу же определить наиболее "горячую" категорию.
Качаем отсюда: http://sw-guide.de/
После активации плагина нужно добавить, например в sidebar.php следующий код:
- <?php
- if (function_exists ('cattag_tagcloud') ) {
- echo '<ul class="is_kat">' . cattag_tagcloud() . '</ul>'; }
- ?>
Сама функция cattag_tagcloud имеет настраиваемые параметры:
- function cattag_tagcloud(
- $min_scale = 8, // минимальный размер в pt
- $max_scale = 30, // максимальный размер в pt
- $min_include = 0, // минимальное количество записей в рубрике
- $sort_by = 'NAME_ASC', // сортировка
- $exclude = '', // исключить рубрики (указать через запятую)
- $element = '<li><a rel="tag" href="%link%"
- title="%description% (%count%)"
- style="font-size:%size%pt">%title%
- <sub style="font-size:60%; color:#ccc;">%count%</sub>
- </a></li>' // шаблон для вывода
- )
Сортировка может иметь значения, как и в функции list_cats(), а также: WEIGHT_ASC, WEIGHT_DESC, RANDOM.
Экспериментируйте с параметрами по своему усмотрению.
Ключевые слова
Каждую свою запись вы можете снабдить ключевыми словами. Например, вы пишите о яблоках, в этом случае ключевыми словами могут быть "фрукты", "здоровье", "витамины" и т.д. То есть теперь посетитель сможет сразу "определить" мысль автора
. Кликнув на ключевое слово, можно перейти на его поиск в других записях или даже на других блогах.
В разных плагинах реализуется это по разному, рассмотрим более простой вариант.
Сам плагин качаем отсюда: http://www.broobles.com/ и активируем его.
После этого прямо в тексте нужной вам записи пишем:
- [tags]Фрукты, здоровье, витамины[/tags]
Теперь в конце записи появится строчка с этими ключевыми словами. Если вы кликнете на ссылку, то попадете на сайт http://technorati.com/./ Если вам это не нужно, то можно указать свою строчку. Например, для того, чтобы это ключевое слово искалось прямо на вашем сайте, напишите в плагине:
- $tag_url = "index.php?s=";
Там же в файле плагина вы сможете настроить и формат вывода.
Последние комментарии
Плагинов, выводящих последние комментарии отдельным списком множество. Если вам нужно просто вывести автора комментария и заголовок заметки, то воспользуйтесь плагином Recent Love - A List of Recent Comments.
В нужном месте пропишите:
- <?php
- if (function_exists('rr_recent_comments'))
- echo rr_recent_comments(7, '<p>', '</p>');
- ?>
Первый параметр обозначает количество выводимых строк.
Если вам нужно сделать вывод и текста комментария (как, например у меня на сайте), то вы можете модифицировать этот плагин
или попробовать поискать другой. Я давно пользуюсь Latest Comments. Только по этой ссылке я не нашел, где его скачать, поэтому просто выложил его у себя на сайте.
После активации плагина в нужном месте укажите:
- <?php
- if (function_exists('cypher_latestcomments'))
- cypher_latestcomments();
- ?>
Вот параметры функции:
- cypher_latestcomments(
- $before='', // текст "до"
- $after='<br>', // текст "после"
- $max_comments=5, // количество выводимых комментарией
- $max_chars = 38 // максимальная длина комментария
- )
Еще записи по теме
- Делаем статический сайт! Шаблоны страниц
- Выпуск 31. Виджеты в WordPress
- Выпуск 17. Рамки к картинкам
- Выпуск 23. Базовый класс для WordPress-плагина
- Выпуск 8. Оформление текстов с помощью HTML (окончание)
- Выпуск 26. Делаем собственный шаблон для WordPress (часть 3)
- Выпуск 30. Используем произвольные поля в WordPress

Комментариев: 5
Я скачал Lastest Comments, активировал. Только вот не пойму как устновить мне вывод свежих комментариев в сайдбар, пробывал реализовать через текстовый виджет(вставил в него текст
<?php
if (function_exists('cypher_latestcomments'))
cypher_latestcomments();
?>
)но ничего не получилось. Посоветуй что надо сделать.
Текстовый виджет не поддерживает выполнение php-скриптов.
через ушки будет работать?
Будет. Только возьмите новую версию и название ушки должно начинаться с «php_».
Всё заработало. Спасибо.
Максим, а как сделать чтобы комментарии заканчивались троеточием?
P.s. в коде не силён, но учусь. :oops: