Плагины для wordpress

Прочитал у StraNNicK'а заметку «Плагины для wordpress». Делюсь списком своих плагинов:

  • ВП Типограф Лайт — Легкая версия типографа только с основной функциональностью — обработка кавычек, тире, спецсимволов вне безопасных блоков (pre, code, samp, textarea, script), правка кавычек внутри code, кликабельные ссылки в комментариях. Также правится неправильное форматирование TinyMCE.
  • Anti-XSS attack — Защита/предупреждение XSS-атак
  • belavir (php MD5) — Проверка целостности файлов
  • Google Analytics for WordPress — Аккаунт есть и работает уже продолжительное время, но всё времени нет сесть и основательно проанализировать
  • Google XML Sitemaps — Тут тоже понятно, генерируется карта сайта в формате xml. Гуглу нравится 🙂
  • highlight.js — Автоматическая подсветка синтаксиса кода.
  • Invisible Captcha — После глюков кеша и графической капчи, перешёл на эту. Ложных срабатываний пока не заметил.
  • Lightbox Plus — Отображение полноразмерных картинок из превью.
  • nginx Compatibility (PHP5) — У хостера стоит nginx, вот только не знаю даёт это что-нибудь или нет...
  • Russify Comments Number — Нормальное отображение окончания слова «комментарий» — то есть, «2 комментария», «5 комментариев» и так далее.
  • RusToLat — Транслитерация русских символов URL в английские.
  • Simple Tags — Вывод и управление тегами. Гораздо больше понравилось, нежели встроенная функция.
  • Subscribe To Comments — Тут всё просто. Подписка на комментарии.
  • TinyMCE Advanced — Визуальный редактор аля «Ворд». Зачем поставил не знаю, наверное, «на посмотреть», т.к. совсем им не пользуюсь.
  • WordPress Database Backup — Периодически приходится делать бекапы базы, особенно при обновлении версии Вордпресса.
  • WP-CommentNavi — Постраничная разбивка комментариев.
  • WP-Noindex — Заключает ссылки в комментариях в теги , что запрещает их индексацию Яндексом.
  • WP-PageNavi — Постраничная разбивка заметок. По мне так удобнее, чем вперёд-назад...
  • WP Super Cache — Тут тоже понятно из названия, кеширование контента.

Раскрытие данных в WordPress

Уязвимость позволяет удаленному пользователю получить доступ к важным данным. Уязвимость существует из-за того, что подробное сообщение об SQL ошибке возвращается пользователю. Злоумышленник может указать некорректное значение параметра «paged» в сценарии index.php и получить данные об используемом префиксе таблиц. Пример:

http://[host]/index.php?paged=-1

Специалисты считают данную опасность низкой. В настоящее время способов устранения уязвимости не существует.

Источник: SecurityLab.ru

UPD: Решение этой проблемы. Может быть сам метод и не идеален, но зато работает. Итак, в файле wp-admin/classes.php находим строку (примерно 618 ):

// Paging
if (empty($q['nopaging']) && ! $this->is_single && ! $this->is_page) {
    $page = $q['paged'];
    if (empty($page)) {
        $page = 1;
    }

И после фигурной строки добавляем:

elseif(isset($page) && !intval($page) || $page < 0) {
    $page = 1;
}

Всё! Сохраняем файл и проверяем волшебной строкой.

1 мая и мысли о WordPress

Для начала хочу поздравить всех жителей экс-СССР с праздником 1 мая! В моём детстве 1-е мая действительно был праздником: светлым, тёплым, солнечным и весёлым настроением. Сейчас же… Сейчас — это просто лишний выходной день в череде серых будней (дом-работа-дом). 🙂 Ну да ладно, продолжим и ещё раз всех с праздником, с лишним выходным.

А теперь некоторые мои мысли о WordPress.

Прежде, чем начну ругать и брюзжать 🙂 напишу немного положительного, так кратенько. Итак. Как для начинающего блоггера (ох, и словечко, но по-другому не сказать более кратко и ёмко) в качестве стартапа персонального блога о себе любимом и т.п. лучше и не придумать. Относительно прост в установке, прикручивается практически для любой скин, как взятый у кого-нибудь, так и собственноручно нарисованный. С WordPress знание основ программирования на PHP почти не обязательно, конечно лучше знать хотя бы основы. Всех возможностей не опишешь, да и цель данной заметки немного другая, поэтому мой совет, скачате, установите на своём компьютере и посмотрите что и как. Благо всяких советов и рецептов по настройке WordPress можно найти при великое множество, как в рунете, так и в англоязычном секторе. 🙂

А теперь собственно, что лично мне не нравится в WordPress. Особо сильно в коде я не ковырялся, но всё же смотрел, что там и как.

Начнём собственно с дистрибутива. Архив размером в 615 kB разворачивается почти в 1.7 MB. Многовато. Изначально русский не поддерживается, приходится качать ещё и ленг-пак. В целом перевод сделан не плохо, но местами некоторые фразы глаз режут. Не по-русски как-то звучит. Теоретически можно сесть и перевести самому, но не так всё просто. Не буду заострять внимание на механизме, просто посмотрите, в каком формате файлы и попробуйте найти в инете (информации масса, сам как-то искал) соответствующие программы.

Дополнительная функциональность за счёт плагинов. В принципе такой подход к наращиванию функциональности продукта вполне нормальный и оправдан, но… Но практически нет единого места, где эти плагины можно найти в одном месте. Я не спорю, что на сайте разработчика можно найти кучу ссылок, на сайты и страницы с плагинами, но некоторые страницы кроме Error 404 ничего не показывают, часть плагинов написана для старой версии и автор не собирается переписывать под новую и т.д. Если вы знаете PHP и у вас есть свободное время, можете сами написать нужный для вас плагин, но… Но для этого вам придётся ознакомиться с документацией (на русском, к сожалению, нет) по написанию плагинов. К тому же, никто не гарантирует, что с выходом новой версии WordPress ваш плагин будет корректно работать.

Так же хочу заметить, что большинство плагинов исключительно англоязычные и переводить придётся их вам, либо тупо забивая русский текст прямо в скрипты, либо искать и настраивать программы для редактирования файлов .po. По мне, так проще держать слова, предложения в отдельном каталоге или файле, например, russian.php. Почему так? Да просто удобно редактировать и изменять в любимом текстовом редакторе, не прибегая к другим программам, с которыми надо не только разобраться, но ещё и настроить. Так же необходимо понимать, что большинство плагинов очень плохо уживаются с русским, отсюда непонятные глюки и накладки.

Не совместимость версий. Все наверняка помнят переход с версии 1.5.х на версию 2.0.х. Полная не совместимость всех написанных ранее плагинов. Поэтому многие очень долгое время оставались на старой версии. Выжидали, когда авторы плагинов адаптируют свои скрипты под новую версию, либо появится новая альтернатива.

Редактор ввода заметок. После установки WordPress редактор ввода заметок имеет вид WYSWIG-редактор. Лично мне он не удобен, поэтому сразу же был отключен. Но после отключения визуального редактора, у меня пропала возможность закачивать картинки. Такой вот парадокс. Выход один, либо искать альтернативный плагин для закачки картинок, либо обратно включать визуальный редактор. Пришлось искать плагин. Нашёл, поставил, работает.

Настройки WordPress. Настроек не много, но как-то они расположены не так. Иной раз приходится долго искать ту или иную опцию, хотя они и разбиты на категории. Так же хочу обратить внимание, что практически каждый установленный плагин добавляет свою страницу с настройками, в которых может быть ещё куча страниц с дополнительными настройками. С одной стороны это хорошо, правильно и удобно. Но с другой стороны, половина настроек на русском, половина на английском. Ужасно не удобно. А теперь что касается так называемого ЧПУ. Если в старой версии я ещё мог что-то отредактировать и изменить в файле .htaccess, то в вресии 2.0.х он вообще пустой. Искать и ковырять скрипты нет никакого желания. Либо можно воспользоваться советами, опубликованными на сайте mywordpress.ru. К сожалению, на момент написания заметки сайт находился в дауне, т.е. лежал, выдавая стандартную wordpress'овскую страницу с ошибкой. Вот ещё одна причина. Очень часто движок валит сервер (на старом хостинге у меня такое было постоянно) и взорам посетителя открывается страница с сообщением об ошибке подсоединения к базе данных и т.п.

Кеширование страниц. Вроде бы как во второй версии было заявлено кеширование не то страниц, не то запросов к базе. Но вот что-то я не замечаю того, что у меня на блоге что-то кешировалось. Никаких настроек я тоже что-то не встречал. Не понятно. В целом же почему-то лично у меня возникает стойкое ощущение, что запросы к базе просто не оптимизированы, хотя это может быть только моё субъективное ощущение.

ИМХО, но в версии 2.0.х разработчики WordPress уж слишком увлеклись так называемым Web 2.0. Если в Firefox'е всё выглядит более менее, то в Opera вообще кошмар (тем более, что визуальный режим работает наредкость криво). Не верите, смотрите скриншот.

Opera 8.54 и режим написания заметки
Opera 8.54 и режим написания заметки

Для меня уже и этого вполне достаточно, чтобы искать альтернативу или даже сесть и написать собственный движок, в котором будет только, что нужно мне и будет работать только так, как нужно мне. Из альтернатив я присматривался к следующим движкам.

Textpattern — сайт разработчика — textpattern.com, русскоязычное сообщество — textpattern.ru. В целом движок мало подходит для ведения блога, но если постараться, то можно и заточить его под свои нужды. Что больше всего не понравилось, так это то, что textpattern хранит всё в базе: скины, плагины и т.п... Неудобно, слишком много запросов к базе получается. Ну и для доведения под себя надо освоить язык textpattern'а. Язык хоть и не сложный, но, положа руку на сердце, ломает и лень. 🙂 Да и многих фич, которые есть в WordPress'е либо просто нет, либо сделаны, но немного не так. Кстати, разработчики вообще не включили такую функцию, как Trackback. Мотивация проста — много неконтролируемого спама. Меня он уже достал, хотя и стоит плагин Spam Karma, а вас?

Serendipity — сайт разработчика — s9y.org. Это уже нормальный, полноценный движок для блога. Понравилось, что все плагины находятся исключительно на сайте разработчика. Можно даже поставить один специальный плагин, который будет синхронизировать ваш список плагинов со списком на сайте разработчика. Очень удобно. Языковые файлы находятся в отдельном каталоге, а в случае с плагинами, просто создаётся необходимый файл в каталоге плагина. Скины так же можно получить с сайта разработчика, а можно и написать свой. Правда в этом случае вам придётся ознакомиться с возможностями Smarty. Вот это мне понравилось меньше всего, хотя и универсально.

На самом деле я просмотрел гораздо больше движков для блога, но только эти два заслуживают хоть какого-то внимания, т.к. по-своему интересны и уникальны, да и обладают достаточно большими возможностями, нежели простое ведение блога. Остальные движки либо убогие, либо какие-то не доделанные, либо вообще не пригодны для хоть какого-нибудь вразумительного использования.

Вот и я подошёл к логическому завершению своей заметки. На данный момент у меня вроде бы есть сейчас немного свободного времени между проектами, поэтому можно заняться написанием собственного движка для ведения блога. Тем более, что есть кое-какие наработки, уже готовые скрипты, идеи. Осталось только сесть, собрать всё это воедино, кое-что дописать и переписать. Одним словом, посмотрим, что у меня получится. Сейчас могу сказать только одно, будет это не быстро и скорее всего не для всех. 🙂

Вышла новая версия WordPress 2.0.2

10 марта вышло обновление WordPress до версии 2.0.2. В основном изменения в этой версии коснулись в исправлении безопасности (2.0.2 Security Release). Скачать свежую версию можно на этой странице с официального сайта. Инструкцию по обновлению версии 2.0.1 на версию 2.0.2 можно найти на этой странице.

К сожалению, русская версия WordPress 2.0.2 на сайте MyWordpress в данный момент времени пока не доступна.

Обновление

Вот я и решился обновить установленный WordPress до последней стабильной версии. Прикрутил кое-какие новые плагины (работу некоторых можно видеть на sidebar'е), получилось на мой взгляд удобно. Да, и ещё, сменил название домена третьего уровня. Для поисковиков и пользователей смена будет не заметна и прозрачна. 🙂

WordPress 2.0.1

Без шуму и пыли вчера вышел очередной релиз WordPress за версией 2.0.1. Как написано на официальном сайте, было пофиксено порядка 114 багов, которые были найдены в версии 2.0. Скачать последнюю версию как всегда можно здесь. Качаем и обновляемся.

WordPress 2.0 вышел!

С небольшим опозданием появался на свет финальная версия WordPress 2.0, скачать которую можно с этой страницы. На данный момент времени информации на сайте об изменениях нет, а в разделе Stable Release до сих пор значится предыдущая версия 1.5.2. Новую версию я уже скачал, но пока ставить не буду (пару-тройку дней назад ковырял RC1). Для начала надо погонять на локальной машине, а потом есть у меня кое-какие планы о переходе на новый движок. Кроме этого, официальный сайт WordPress.org, также сменил дизайн.

Смена хостинга

Вчера ночью — сегодня утром переехал на новый хостинг. На старом хостинге работа WordPress приводила к падению базы данных. На новом хостинге вроде бы должно работать немного получше и быстрее. Переезд произошёл быстро и без потерь, главное вовремя сохранить данные.emoticon

 

WordPress 2.0 RC 1

Как-то незаметно и потихонечку без всякого шума и пыли WordPress 2.0 Beta обновился до WordPress 2.0 RC1. Что можно сказать. Всем желающим ознакомиться есть смысл скачать и погонять это RC1 на локальной машине. На боевой и действующий сервер ставить не рекомендуется, хотя если вы мазохист и вам начхать на глюки (возможные баги) в скриптах, спокойно ставьте эту версию. Как говориться — флаг вам в руки и барабан на шею.

С нетерпением ждём выхода официального релиза. 

Плагин wp-cache 2

Вот уже второй день бьюсь с плагином wp-cache 2. На домашнем серверке под управлением (ОС: Windows) Apache 1.3.x/PHP-4.4.1 он встал, но заработать не захотел. Ну тут всё ясно, сам автор пишет, что данный плагин под виндой работать не будет. Хорошо. Слил файл на сервер. Активировал плагин, нужные линки и каталоги создались, запустил плагин. Фиг там, не кеширует всё. Всё уже излазил, все комменты у автора прочитал, но так решение этой проблемы не нашёл.

Полагаю скорее всего есть какая-то зависимость к установленным версиям Апача, ПХП, а также с установленными модулями Апача. Не знаю что пока и думать. Временно кеширующий плагин отключил. Если у кого он заработал, напишите, плиз какая версия Апача, ПХП и версия самого плагина.

Update: К вечеруночи после бокала пива emoticon разобрался с этим глюкомдромом. Вся фишка неработоспособности плагина (в моём случае) была в том, что я добавил строку define ('WP_CACHE', true); в самый конец файла wp-config.php перед ?>. Как только эту строку перенёс выше, запихнул под define ('WPLANG', 'ru_RU');, всё сразу заработало. Непонятно. emoticon Теперь посмотрим как будет работать блог с установленным кешированием.