Результаты поиска по тэгу ‘PHP, WordPress’

Создаем виджеты для Wordpress

В предыдущей статье мы рассмотрели функции WordPress API, предназначенные для работы с виджетами и динамическими сайдбарами. Теперь мы займёмся самим процессом создания виджетов, их настройкой и показом на сайте.

Добавить виджет можно двумя способами:

  1. добавив код в файл functions.php текущей темы;
  2. создав плагин с кодом виджета.

Эти два способа создания виджетов мы и рассмотрим в данной статье на примере добавления виджета, заменяющего стандартный виджет Meta, выводящий несколько ссылок в колонке вашего блога.

При этом подразумевается, что ваша тема поддерживает работу с динамическими сайдбарами и виджетами. Если же это не так, то вам необходимо добавить поддержку виджетов в вашу тему, как это сделать можно прочитать в моей статье "Делаем тему для WordPress виджет-совместимой".

Читать полностью »

Виджет-ориентированные функции WordPress API

В двух своих предыдущих статьях я уже описал что такое виджеты и как добавить поддержку виджетов в вашу тему. Думаю, что пора уже заняться созданием своих виджетов для WordPress.

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

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

В следующей статье(Создаем виджеты для Wordpress) рассмотрим два способа создания виджетов и работы с ними: с помощью плагинов и с помощью добавление виджета в текущую тему WordPress.

Итак, рассмотрим функции API WordPress, используемые при создании и размещении виджетов на сайте.

Читать полностью »

Делаем тему для WordPress виджет-совместимой

Эту статью можно назвать продолжением моей предыдущей статьи о виджетах. Виджеты - хорошая штука, так как позволяют простым перетаскивание добавлять/удалять блоки, менять их порядок в колонках блога.

В принципе, мнгоие авторы тем, распространяемых по GPL, уже давно сделали свои темы виджет-совместимыми. Но если вы скачивали тему давно, а новой версии ее автор не выпустил, то вполне возможно, что использование виджетов в ней не предусмотрено. Да и темы, созданные самостоятельно тоже часто не рассчитывались на использование виджетов, так как не было нужды или автор темы просто не знал о них.

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

Ниже я опишу как можно добавить поддержку виджетов в вашу тему, и как можно адаптировать их вид к вашей теме.

Читать полностью »

XML-RPC в WordPress перестает работать с PHP 5.2.2

Как стало известно от одного зарубежного товарища, если на сервере, на котором работает ваш WP происходит обновлении версии PHP до 5.2.2, то нарушается работа xmprpc.php, используемого блог-клиентами вроде BlogJet.

При попытке разместить сообщение в блоге с помощью BlogJet будет выдана ошибка :

Invalid payload received from xmlrpc server.
Server said:
"XML-RPC accepts POST requests only."

К счастью, блоггерское сообщество уже нашло решение, требующее редактирование файла xmlrpc.php.

Надо добавить следующий код в файл:

if (phpversion()=="5.2.2")
$GLOBALS['HTTP_RAW_POST_DATA'] = file_get_contents("php://input");

И все должно заработать.

Warning: ob_start(): output handler ‘ob_gzhandler’ и т.д.

Не знаю, у всех ли возникает эта проблема, но я заметил, что при первом, после запуска браузера, заходе на свой блог, я вверху получаю следующее предупреждение:

Warning: ob_start(): output handler 'ob_gzhandler' cannot be used after 'URL-Rewriter' in /home/wp/www/wp-includes/functions.php

Очень мне это не понравилось и я решил это дело как-то исправить.

Как выяснилось, это сообщение выдается из-за конфликта механизма создания сессии и gzip обработчкиа. То есть, если в настройках WordPress отключить GZIP компрессию, то это предупреждение исчезает. Многие как я понял так и делали. Но мне кажется, нет смысла отказываться от такой полезный штуки, как gzip-компрессия. Поэтому нашёлся другой способ, требующий внесения небольшого изменения в файл functions.php, расположенный по пути:

каталог_с_wp/wp-includes/functions.php

Открываем его и перемещаемся к строке 419, она содержит строку

ob_start('ob_gzhandler');

над этой строкой добавляем еще одну:

ob_end_flush();

В итоге, весь код редактируемой функции будет следующий:

function gzip_compression() {
    if ( !get_option('gzipcompression') ) return false;
    if ( extension_loaded('zlib') ) {
        ob_end_flush();
        ob_start('ob_gzhandler');
    }
}

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

Добавлено(1 июля 2007): В версии WordPress 2.2.1 эта проблема, похоже, исправлена.

Как установить WordPress на хостинг

Иметь свой блог, сегодня, является едва ли не обязательным атрибутом современного человека. И как театр начинается с вешалки, так блог начинается с его создания :)

Возможностей, в общем-то, в наше время много, но разделить их можно на 2 группы:

  • создание блога установкой соответствующего скрипта, написанного на PHP, Perl, Ruby, Python ну и так далее, вплоть до ASP.net;
  • создание своего блога на мощностях существующих социальных сетей или специализированных сайтов.

Второй случай мы в этой статье рассматривать не будем, да и не сложно там все, в основном..

А будем мы сегодня создавать свой блог на базе популярного софта, с названием WordPress, написанного на PHP.

Это, пожалуй, самый популярный блог, из написанных на PHP. Да и среди всех языков он, как мне кажется, лидер.

Читать полностью »

Тэги, соотвествующие заданному условию не найдены.