Поддержка Проблемы и решения Не до конца загружается страница Добавить страницу.

  • В последнее время все чаще появляются проблемы с полной загрузкой страницы Добавить страницу. Появляются блоки Заголовок, Основной Текст, Опубликовать страницу и немного от блока Атрибуты страницы. Если следить по коду, то загрузка останавливается на:

    <div id=»pageparentdiv» class=»postbox » >
    <div class=»handlediv» title=»Нажмите, чтобы переключить»>
    </div><h3 class=’hndle’><span>Атрибуты страницы</span></h3>
    <div class=»inside»>

    Соответственно не грузятся подвальные скрипты и в целом функционал такой страницы весьма печален. Та же ситуация и при редактировании страниц.

    Сам грешу на то, что WP начал возмущаться на большое количество страниц(сейчас более 6000). Количество страниц было довольно быстро увеличено и по мере его увеличение стр Добавить страницу и Редактировать постоянно замедлялись. Что было сделано и добавочные симптомы.

    • Проверены несколько браузеров, чистил кэш, убирал плагины — не помогло.
    • Сайт сидит на VPS, свободные ресурсы имеются.
    • К тому же на том же VPS имеется еще один сайт на WP, который работает без проблем и имеет минимальное количество страниц.
    • При добавлении записей проблем не возникает(количество записей на данный момент — более 2000)
    • Установлен плагин Произвольные поля
    • База данных постоянно чиститься от мусора с помощью WP-Optimize

    Может кто сталкивался или хотя бы подкиньте пару идей куда копать!)

Просмотр 10 ответов — с 1 по 10 (всего 10)
  • Модератор Yui

    (@fierevere)

    ゆい

    /etc/mysql/my.cnf

    сколько у вас значение max_allowed_packet ?

    Стоит Centos и по адресу /etc/my.cnf нашел:

    max_allowed_packet = 1M

    Модератор Yui

    (@fierevere)

    ゆい

    ну вот и нашли проблему, 1М очень мало

    поставьте 16М и перезапустите mysqld

    Благодарю. Да, действительно, проблема оказалась в этом. Однако и 16m(мегабайтов я так понимаю) оказалось мало. Поставил 64 — пока все работает. Потестирую некоторое время, потом может уменьшу чуток.

    Модератор Yui

    (@fierevere)

    ゆい

    можете не уменьшать, 64 для вордпресса конечно многовато,
    но те, у кого в БД живет много BLOBов используют размеры пакетов по 256М и выше

    да,расход памяти будет повыше, а что поделать )

    Как не прискорбно признавать, но все же проблема никуда не делась. Даже те самые 256М не помогают. Хотя сама база данных весит 88 мб.

    Может есть еще какие-то фишки?

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

    Однако помогло постучаться в код страницы и заметить что блок Родительская грузит список из более чем 6 тысяч моих страниц, в надежде что хотя бы одна из них станет родительской для вновь создаваемых. Выщипнув ответственный за это безобразие код из шаблона WordPress я решил эту проблему!! Теперь описываемые страницы грузятся чуть ли не молниеносно, хотя когда терпение уже было на исходе, эти страницы грузились около 10 сек, если не больше.

    Если кому интересно и если кому нужно выщипнуть этот код, прошу на разбор полетов в своем блоге: http://about-windows.ru/sajtostroenie/wordpress/ne-do-konca-gruzitsya-stranica-dobavit-stranicu-v-wordpress/

    Модератор Yui

    (@fierevere)

    ゆい

    приятно когда люди не только сами пытаются разобраться, но и разбираются и даже публикуют отчет об этом )

    удачи!

    корни проблемы в 6 тысячах страниц, разве это не очевидно?
    строить сайт надо на записях, они для того и предназначены.

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Хорошо, что проблему удалось решить, но не нужно править файлы ядра 🙂

    Чтобы скрыть блок выбора родительской страницы, достаточно добавить подобный фрагмент в functions.php активной темы или оформить в виде плагина:

    function remove_parent_page_dropdown( $args, $post ) {
    	$args['include'] = -1;
    	return $args;
    }
    add_filter( 'page_attributes_dropdown_pages_args', 'remove_parent_page_dropdown', 10, 2 );

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

    Вторым параметром в функцию передаётся объект текущей страницы, при желании можно выводить этот блок в зависимости от $post->ID, включая в него только нужные страницы.

Просмотр 10 ответов — с 1 по 10 (всего 10)
  • Тема «Не до конца загружается страница Добавить страницу.» закрыта для новых ответов.