WordPress 2.8 и $_REQUEST

Vladimir
Опубликовано в: WordPress

Тем, у кого возникли проблемы с интеграцией в WordPress сторонних приложений, использующих аутентификацию по cookie: разработчики в релизе 2.8 переплюнули сами себя и добавили одну фичу: выбросили из суперглобальной переменной $_REQUEST данные из $_COOKIE. Далее

14
Июнь
2009

WordPress 2.8

Vladimir
Опубликовано в: WordPress

Вышел WordPress 2.8. За первые двенадцать часов с момента релиза он был загружен более 64,000 раз.

В работе над релизом принимало участие 153 человека, и я среди них.

Будем надеяться, что у нас всё получилось, и мы не внесли слишком много новых ошибок :-)

11
Июнь
2009

Ужасы таксономии в WordPress

Vladimir
Опубликовано в: WordPress

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

Я взял свежую дефолтную инсталляцию WordPress 2.8-bleeding, сгенерировал тестовый контент и пошел искать недоработки и проблемы с производительностью. Одну из них я нашел очень быстро: при попытке удалить категорию, в которой была 1,001 ночь запись.

На неслабом сервере это заняло около 20 секунд и… более 12,000 запросов (да-да, двенадцати тысяч, я количеством ноликов, увы, не ошибся). Далее

9
Июнь
2009

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

Один из методов, __call(), согласно документации используется при попытке вызова недоступного метода в контексте объекта.

Иными словами, в следующем фрагменте кода

[-]
View Code PHP
< ?php
    class A {
        public function call($method, $params)
        {
            print "Attempt to call {$method}\n";
        }
    }

    $a = new A();
    $a->someMethod();
?>

будет вызван магический метод A::__call("someMethod", array()), который напечатает

[-]
View Code Text
Attempt to call someMethod

С несуществующими методами всё ясно, но в документации упоминается слово «недоступные» (inaccessible). Далее

7
Июнь
2009

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

6
Июнь
2009