Записи с метками ‘hints’

Хоткеи в WordPress и Zwordpress для FireFox

Вторник, 9 октября 2007

Тов. Евгений с Design For Masters (который я постоянно читаю) в комментариях к “Упрощаем себе жизнь в админке” посетовал на то, что в WordPress’овском (не визуальном) редакторе нет хоткеев. А как оказалось есть, и аж целых 13 штук!

1. Bold: Alt+SHIFT+b
2. Italics: Alt+SHIFT+i
3. Link: Alt+SHIFT+a
4. Blockquote: Alt+SHIFT+q
5. del: Alt+SHIFT+d
6. ins: Alt+SHIFT+m
7. Image: Alt+SHIFT+i
8. Unordered List (ul): Alt+SHIFT+u
9. Ordered List (ol): Alt+SHIFT+o
10. List Item (li): Alt+SHIFT+l
11. Code: Alt+SHIFT+c
12. More: Alt+SHIFT+t
13. Опубликовать пост: Alt+SHIFT+p

Как не трудно догадаться всё это реализовывается не какими-то спец.средствами WordPress, а банальным параметром у кнопок - accesskey, поэтому при небольших затратах времени можно прицепить хоткей вида Alt+SHIFT+буква к любой кнопке в админке и/или пользовательском меню, добавив в

атрибут accesskey=”буква”.
В связи с этим желание улучшить функционал WP-AddQuickTag стало практически непреодолимо.

Пока искал плагины для вордпресса для реализации хоткеев, наткнулся на аддон для FireFox, под названием ZWordPress. По ссылке можно прочитать про установку и настройку, а так же скачать (zwordpress.xpi - 14 Кб).
Расскажу вкратце что он может, а вы уж сами решайте пользовать или нет: после установки вешает свою меню на панель, рядом со “Справкой”, из которого можно открывать соответствующее меню своего блога откуда угодно, причём главная особенность - поддержка до 10 блогов с переключением между ними комбинацией Alt+Z+номер_настроенного_блога.

zwordpress blog menu

Доступ к пунктам меню всё через тот же хоткей или из панели:
zwordpress toolbar menu

Текущий активный блог показывается в нижней панели FireFox:
zwordpress active blog toolbar

И всё бы хорошо, да у меня на комбинации Alt+Z уже долгие годы стоит хоткей в WinAmp, поэтому думаю плагин не приживется, но может у кого-то он найдёт применение.


Хоть и обещал вывесить новые смайлы, но пока что занят редизайном темы под один новый проект, но между тем стараюсь не забрасывать старые плагины и наработки. Сейчас тестирую вывод кол-ва загрузок для DownloadCounter Mod Rus в произвольном месте поста.
Попутно обновил плагины - убил Tiger Admin и поставил вместо него Advanced-Admin-Menus (Евгений, ты о нём говорил?), а так же взял у ЛеКактуса переведенный Simple Tags, быстренько проставил метки на старые записи и наконец-то обзавелся WP-23-RelatedPosts.
Работает он только с 2.3 версией и выбирает посты исходя из тэгов.
И всё же интересно, а может есть какой-то плагин хоткеев для ВордПресс?

Упрощаем себе жизнь в админке WordPress

Пятница, 28 сентября 2007

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

Думаю почти все WordPress-блоггеры проводят не мало времени в администраторской панели - проверяя статистику, добавляя что-то в блогролл и конечно же в процессе написания очередного эпохального поста.
Не знаю кому как, а мне несколько поднадоело оформление, а так же некоторая нелогичность, точнее многострочность, расположения элементов меню. Поэтому первым делом я поставил себе плагин WP-Tiger Administration 3.0 и теперь админка выглядит так же как на картинке, за исключением того, что всё на русском. И в этом нет ничего удивительного, ведь всё что делает плагин - это цепляет свою CSS-таблицу стилей к админке, а это значит, если что не понравится, то можно довольно шустро в ней всё исправить. Но меня пока что устраивает.

wp-admin tiger screenshot

Теперь ответьте мне вот на такой вопрос - часто ли вы используете, при написании поста, такие “замечательные” вещи как установка пароля, выбор автора поста, трэкбэки и прочее? Я вот, честно говоря, кроме как окном ввода записи и выбором рубрики (ну теперь ещё и полем тэгов) ни чем не пользуюсь, а ведь согласитесь - перед глазами маячит и страницу грузит дольше, особенно если приходится “Сохранять и возвращаться”.
Чтобы избавить себя от всего лишнего и добавить пару лишних секунд на написание поста, а не ожидание загрузки, ставим плагин Clutter Free, лезем в настройки профиля (Пользователи > Ваш профиль) и галочками убираем то, что не нужно. Я оставил себе Короткую ссылку (Slug), Категории (Categories) и Меню разметки (Quicktags). Правда у меня в админке ещё висит блок от All in One SEO Pack (о котором позже), но в общем и целом всё довольно пустынно и… легко.

Ну раз уж мы залезли в Ваш профиль, то позвольте спросить - “Вы всё ещё пользуетесь визуальным редактором?!” Тогда мы идём к вам!
Это наверное самая тормозная штука во всей странице написания поста, я уж молчу про тот код, который он порой лепит, а уж сколько времени нужно, чтобы в нём что-то написать… Каюсь - сам не так давно им пользовался и даже искал “расширенные” версии, но намучившись при создании поста, содержащего исходные коды на php, понял насколько проще работать с голым HTML, когда сам решаешь, что преобразовать в спец.символ, а что нет.
В принципе стандартного набор кнопок форматирования в упрощенном редакторе вполне достаточно для жизни, но можно сделать лучше и его!
Качаем WP-AddQuickTag, активируем и идём в Настройки > Add QuickTags. Тут всё банально, первое поле - название отображаемое на кнопке, второе - открывающий тэг, третья - закрывающий. Сохраняем и идём писать наш пост дальше, где… ничего не появилось)
Дело в том, что последнее обновление плагина было в конце 2005 года, а с тех пор многое изменилось, WP-2.3 на дворе, как никак, поэтому нужно внести коррективу в код и заменить строку

if(strpos($_SERVER['REQUEST_URI'], 'post-new.php') ||
strpos($_SERVER['REQUEST_URI'], 'page-new.php') ) {

на

if(strpos($_SERVER['REQUEST_URI'], 'post-new.php') ||
strpos($_SERVER['REQUEST_URI'], 'page-new.php') ||
strpos($_SERVER['REQUEST_URI'], 'post.php')) {

На первых порах я добавил себе кнопку для создания ссылки с nofollow (нефиг на всех подряд ссылаться), а так же для выделения php-кода. Но мне так понравился этот легковесный плагин (всего 5 килобайт), что я думаю довести его до ума и немного расширить настройки и возможность.

Что буду писать в следующем посте - для меня загадка, но надеюсь, что он будет вам интересен.

Как безопасно обновиться до WordPress 2.3 по шагам

Вторник, 25 сентября 2007

Руководство для самых нетерпеливых)
Сразу скажу, что сам я буду обновляться только после выхода русского релиза от Максима. На днях собирался ещё и поставить кучу плагинов, но теперь придётся повременить и дождаться их обновления.


Какая же последовательность действий, чтобы безопасно обновиться с 1.5.x, 2.0.x, 2.1.x, или 2.2.x до 2.3?

0. Удостоверьтесь, что у вас стоит UTF версия WordPress или сперва обновитесь версией от Максима, потому что в противном случае возможны проблемы с кодировкой.
1. Сделайте бэкап БД.
Сделайте копию всех своих данных: пользователей, постов, страниц, категорий.
Можно воспользоваться плагином WP-DBManager или сделать всё руками:
а) зайдите в админ.панель phpmyadmin (где он расположен зависит от хостера) или поставьте плагин WP-Phpmyadmin, чтобы запускать его из WordPress.
б) в панели слева выберите пункт Databases.
Databases menu

в) в списке кликните на свою БД
Database Selection

г) на следующей странице показан список всех таблиц. Жмём на закладку Export вверху страницы.
Export Tab

д) теперь перед вами меню экспорта. Тут вам необходимо выбрать таблицы, относящиеся к WordPress. Если в данной БД установлен только блог, то смело жмём Select All, в противном случае отмечаем все строки начинающиеся на wp_ (если устанавливали по умолчанию) или другой префикс, который можно посмотреть в файле wp_config.php
wp-tables list

е) Проверьте, что выбран пункт SQL, проставьте галки Structure, ‘Add DROP TABLE’, ‘Add AUTO_INCREMENT’, ‘Enclose table and field names with backquotes’, DATA (но уберите галки внутри этого блока) и ‘Save as File’
wp-tables list

ж) Сперва выбираем пункт ‘None’ в разделе ‘Save as File’, жмём GO и сохраняем файл на диск.
После этого можно сохранить и архивированную версию, выбрав ‘zipped’.
Процесс бэкапа базы данных закончен.

2. Бэкап всех файлов WordPress.
Подключаемся по фтп своим любимым клиентом и сливаем все папки и файлы (включая .htaccess) к себе на локальную машину. Описывать этот процесс не буду, потому что подозреваю, что раз вы смогли когда-то залить блог на сервер, то сможете и скачать.

3. Проверьте бэкапы.
Откройте SQL файл в каком-нибудь текстовом редакторе и проверьте, чтобы он был не пустой, удостоверьтесь, что zip-версия распаковывается без проблем, а так же что сохранена иерархия скаченных файлов и можно зайти в подкаталоги.

4. Отключите ВСЕ плагины.
Идём в Админ.панель и выключаем их по одному.

5. Скачиваем последнюю версию с оффсайта.
И распаковываем на своём компьютере.

6. Удаляем старые файлы WordPress на сервере.
Это стоит делать в том случае, если вы не уверены, что ваш FTP-клиент (или если вы работаете через админ.панель хостера) правильно перезапишет файлы.
НЕ УДАЛЯЙТЕ:
* wp-config.php
* папку wp-content
* папку wp-images
* папку wp-includes/languages/ если пользуетесь локализацией через MO файлы
* файл .htaccess

Обязательно удалите:
* все файлы начинающиеся на wp-* кроме перечисленых выше, а так же readme.html, wp.php, xmlrpc.php и license.txt. Обычно их можно найти в корне сайта. И ещё раз напоминаю - НЕ УДАЛЯЙТЕ wp-config.php
* папку wp-admin
* папку wp-includes. Помним о wp-includes/languages/
* папку wp-content/cache. У вас будет эта папка только в том случае, если вы обновляетесь с WordPress 2.0
* папку wp-content/plugins/widgets. У вас она будет, только если вы устанавливали дополнительные виджеты. Старые версии не совместимы с 2.3

7. Скопируйте новые файлы на сервер.
Возможно придётся перезаписать часть файлов, например темы, входящие в стандартную поставку WordPress (default и classic).

8. Запустите процесс обновления WordPress.
Перейдите по адресу http://ваш_сайт/wp-admin/upgrade.php, если блог находится в другой папке на сервере, то допишите к УРЛ wp-admin/upgrade.php.

9. Обновите пермалинки и .htaccess.
В панели управления блогом в Options->Permalinks (Настройки->Постоянные ссылки) обновите структуру ссылок и, если необходимо, добавьте нужные строки в .htaccess.

10. Проверяем плагины на работоспособность.
Для этого сверяемся со списком совместимых плагинов и проверяем обновления в разных источниках (офф.архив плагинов, WP-plugin database, WpZipper)
Не забываем после установки их активировать.

11. Изменяем текущую тему под WordPress 2.3.
Для этого читаем статью How To Add Wordpress 2.3 Tags To Your Current Theme.

Вроде всё. Как говориться - piece a cake, baby.


А стоит ли вообще обновляться? Прочитай статью о нововведениях в WordPress 2.3 и реши для себя сам.
Кстати, если найдутся желающие прочесть статью How To Add Wordpress 2.3 Tags To Your Current Theme в моём переводе, то отпишитесь в комментариях и постараюсь не разочаровать вас.

Ньюансы работы Opera с XMLHttpRequest или почему пусто в responseText

Понедельник, 10 сентября 2007

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

Комментарий товарища Maelow к посту про Anti-Smap Image + Ajax Comment :

“в опере у меня при вводе неверных символов в КАПЧЕ выскакивает окно с ошибкой не содержащей текста”

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

Долгие попытки поиска ошибок в коде плагина, а так же гугленье заставили сделать вот какой вывод о работе XMLHttpRequest, а точнее о получаемых ответах:
“При получении Opera в header’е страницы, возвращаемой запросом при помощи XMLHttpRequest, любого статуса кроме 200, данные, содержащиеся на странице, не попадают в responseText.”

Именно поэтому и не работали в Опере сообщения об ошибках Ajax-Comment, который возвращал текст сообщения вместе с 406 (Not Acceptable) ошибкой. FireFox и IE ловили ошибку и, получив ещё и текст со страницы, выдавали alert как нужно, а Опере ничего не оставалось, кроме как показывать пустые строки.

В принципе всё достаточно логично, только вот в скрипте Ajax-Comment пришлось делать “финт-ушами” и вносить изменения, дабы и Опера жила припеваючи.

Сам способ я считаю не слишком хорошим, но если кто знает более простой, то прошу дать ссылку или описать свой метод.
Поступил я так: заменил header ответа с 406 на 200 (вот это-то, по сути, и есть не правильное, в плане логики, действие) и добавил в сам текст сообщения - “Error!”.
В java-script, который обрабатывал ответы, добавил проверку на наличие этого сообщения, а затем уже вызов alert без него:

      if(request.responseText.indexOf('Error!')==0) {
        alert(request.responseText.substr(6));
        return;
      }

Если вы уже поставили себе Ajax-Comment, то просто замените файл ajax-commens.php, взяв его из этого архива. Во всех остальных сборках я уже обновил этот файл.

Как я делал блог из WordPress (часть 3.5) или Anti-Spam Image + Ajax Comment

Понедельник, 10 сентября 2007

В продолжение темы о анти-спаме.

Пообщался с Максимом и решил, что его Anti Spam Image всё же поинтереснее и более доступен для понимания (да и весит 6 кб, вместо 900 у AuthImage).

Поэтому предлагаю вашему вниманию anti-spam-image-ajax.rar.
Копируем содержимое архива в папку плагинов WordPress и активируем через панель. Если стоит предыдущая версия плагинов, то достаточно заменить файлы, можно даже не переактивировать.

Так же обновил Ajax Comments, напомню, что плагин не будет адекватно работать, при наличии каких-либо Capcha-плагинов, так что ставьте его на своё усмотрение, а если решите добавить AuthImage или Anti Spam Image, то берите их с моего сайта и не забудьте раскомментировать соответствующие строчки в ajax-comment.php (ищите русский комментарий в тексте скрипта).
Возможно Максим добавит модифицированную версию в свою сборку WordPress, но пока что это не известно. Не модифицированная версия может работать не правильно.

Желаю вам Spam-Free будней и побольше чистых комментариев.


Остальные части из серии “Как я делал блог из WordPress”:
Часть 1 - Нахрена оно вообще надо?
Часть 2 - DownloadCounter и WP-stats по-русски
Часть 3 - Боремся со спамом AuthImage-Ajax