С установкой у меня wordpress начиная с версии 3.х прявились какие-то странные глюки — в новой теме не хотели добавляться стандартные виджеты, новые рубрики ни в какую не хотели создаваться, да и с метками была какя-то дребедень — при попытке выбрать из существующих — выходило сообщение об ошибке.
Долгие лазания по форумам и wordpress-овским сообществам ничего мне дало — либо говорили "не может этого быть" — либо тема зависала……Короче — решения в и-нете я так и не нашла…
На одном мз форумов народ все валил на хостеров — но хостеры тоже ленивые люди — у них четко срабатывает тезис:
Ошибка признается существующей в той мере, в которой ее может описать и продемонмтрировать заказчик.
К нашим админам, покрайней мере, можно идти только после того, как можно точно сформулировать проблему и описать все методы ее решения (у меня не работает фунция такая-то, я проверила PHP-конфигурацию — не хватет библиотечки такой-то).
Короче, просто на вопрос "почему после обносления WP до более свежей версии я три дня не могла войти в админку" меня вежливо послали.
После анализа логов, обнаружилось, что сервер выдает ошибку
Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 7680 bytes) in /home/semgon/public_html/wp-includes/…….
Это уже что-то. Оказывается — системе не хватает памяти!!!!!!! Опять шаримся по форумам — и опять меня привычно отправляют к хостерам, но теперь уже с конкретной просьбой изменения файла конфигурации php — увеличить память….Хм….Как не хочется ОПЯТЬ быть вежливо посланной куда-нить….Тем более, что они это запросто отказ могут аргументировать "выбранным тарифным планом" и "увеличением нагрузки на сервер".
Как оказалось — нехватку памяти можно решить гораздо легче и своми силами.
На решение натолкнул вот этот пост
Исправляется ошибка так:
Увеличиваем memory_limit — в файле default-constants.php находим строчки
// set memory limits
if ( !defined('WP_MEMORY_LIMIT') ) {
if( is_multisite() ) {
define('WP_MEMORY_LIMIT', '64M');
} else {
define('WP_MEMORY_LIMIT', '32M');
}
и меняем 32M на 64M.
Ву-а-ля!!! Все работает!!!!!!
В некоторых версиях эта константа может быть определена в файле wp-settings.php.
P/S/ После уже иправления ошибки, в одной из статей нашла информацию о том, что для wordpress 2.3-2.7 достаточно memory_limit = 32М, а вот версии постарше типа wordpress 2.8 и .2.9 требует уже 64М. Интересно, почему же тогда разработчики в исходниках в переменных все равно бишут 32К?
Ну тогда еще несколько способов увеличить значение memory_limit.
1. Обратиться к хостеру с просьбой. Объяснить мол не хватает для выполнения скрипта или работы WordPress.
2. Можно увеличить memory_limit, если у вас есть доступ к глоабльным настройкам сервера, либо подправить файл php.ini.
3. Увеличиваем memory_limit внеся соответствующую запись в файл .htaccess в корневой директории на FTP.
php_value memory_limit 32M
4. Ну и самый лучший метод, как говорят – задание значения memory_limit непосредственно в WordPress. Про это я писала выше.
Все — всем удачи!!!!!!