WordPress функция query_posts()

1

Тема для данной заметки навеяна проблемой, возникшей при переносе одного из блогов на VPS сервер. После переноса отказался работать плагин Advanced Category Excluder, который позволял отключить вывод постов из отдельной категории (или группы категория) в требуемых разделах блога, например, на главной странице или в архивах. В итоге, на главной оказались те публикации, которых там быть не должно. Более того, в общую ленту вылезли ревизии, картинки и файлы. В общем, все, что пишется в таблицу wp_posts, повалило в продакшен. Что за изъян приключился с упомянутым плагином, я выяснять не стал, а просто поискал замену оному. Альтернатив оказалось не так много и было решено обойтись без плагина в принципе.

В целом, решение правильное, так как сам по себе плагин Advanced Category Excluder не добавляет к движку ничего нового, а служит лишь оберткой для базовых функций WordPress, делающей работу с ними более комфортной.

Читать далее »

WordPress

WordPress и кириллические домены

0

Случилось мне ставить WordPress на сайт с кириллическим доменом. Сначала я перенес все с локальном машины, должным образом подправил в базе конфиг, но нет. Часть функций админки банально не работала. Не работали элементы интерфейса, реализованные на JavaScript, в том числе формы, данные из которых отправлялись через ajax.

Переустановил движок уже по-человечески. Картина аналогична.

В первую очередь не работало управление виджетами меню. Меню можно было создать, но добавить в него страницы – нет. Данные просто не сохранялись в базу, а скрипт подвисал. Совершенно случайно выяснилось, что управление меню работает в FireFox. Но потом не менее случайно выяснилось и то, что в FireFox не работает загрузка файлов через flash-загрузчик, зато она прекрасно работает в Opera.

Читать далее »

WordPress

Проблемы с плагином DCaptcha после обновления WordPress

2

Не так давно обновил движок WordPress до версии 2.9.2, а затем, через некоторое время, заметил, что в комментарии стали сыпаться буквально тонны спама. Меня это удивило, так как раньше установленный плагин DCaptcha прекрасно с этой проблемой справлялся. Нетрудно было догадаться, что причиной возникновения проблемы стало обновление движка. Толи плагин теперь не цепляется, толи это просто какая-то уличная магия.

На самом деле, все оказалось гораздо проще. Если вы когда-нибудь смотрели на то, по какому принципу работают различного рода каптчи под WP, наверное обращали внимание, что почти все используют функцию wp_set_comment_status(), которая меняет статус комментария, если он не прошел проверку на спам. Если проверка кода безопасности не прошла, комментарий получал статус “delete” и растворялся в пространстве.

Читать далее »

WordPress