Как настроить WordPress для обработки 75 000 страниц?

12

У меня есть большой сайт, который использует WordPress. Пока у нас 75 000 страниц сайта, и он хорошо работает на переднем крае.

Проблема в том, что если кто-то из нашей команды прикоснется к редактору страниц (wp-admin / edit.php? Post_type = page), Apache пожирает всю память на сервере.

Я пытался отключить все плагины, но это не сработало. Я также попробовал отладку на нашем живом сервере, который на 4 Гбайт-коробке ... он все еще пожирает всю память и приходит в негодность.

На этой установке у нас также есть 20 000 сообщений. Нет проблем с загрузкой в ​​wp-admin. Может быть, нам следует переместить все страницы в посты - однако это вызовет проблему со структурой постоянных ссылок.

Существуют ли специальные настройки или конфигурации, которые мне не хватает для большого сайта WP?

Алекс Кук
источник
Это известная проблема в WordPress, один из билетов - core.trac.wordpress.org/ticket/9864
hakre
@hakre, это правда, спасибо - похоже, проблеме два года, и исправление не будет выпущено в ближайшее время. Вы нашли ответ / исправить себя?
Алекс Кук
wordpress.org/plugins/cms-tree-page-view Я использую этот плагин для более чем 55 000 записей иерархически, хорошо работает
Монин Андрей

Ответы:

4

Проблема заключается в том, что для отображения страниц и их иерархии WP должен загрузить их все, а затем построить дерево в памяти.

Таким образом, вы сохранитесь, если сможете преобразовать большинство этих страниц в один или несколько неиерархических пользовательских типов записей.

Структура постоянной ссылки может быть эмулирована.

scribu
источник
1
Это почему? Разве он не может загрузить только количество страниц, запрошенных текущей страницей (одна из которых задается в параметрах экрана), затем загрузить их дочерние элементы и исключить некоторые из конца, если необходимо, чтобы соответствовать этому числу? И «родительский» выпадающий список можно заменить простым
окном
Благодарю. Мне нужно больше исследовать пользовательские типы постов. Когда они были впервые выпущены, я помню, что вы использовали постоянную структуру, такую ​​как / cats / squiggles. Но, возможно, теперь я могу использовать только / squiggles для пользовательских типов записей (это наша структура постоянных ссылок для этих страниц). Надеюсь, это относительно легко исправить!
Алекс Кук
@ One Trick Pony: потому что количество запросов в БД будет расти в геометрической прогрессии.
scribu
Будет ли эта проблема возникать с новым плагином форума bbpress? Я хотел преобразовать свои форумы VB (1,2 миллиона потоков) в bbpress, и чтение этого вызывает у меня серьезные сомнения в том, что я могу это сделать
Шон
@shawn: bbPress не использует страницы. Используются неиерархические типы записей + иерархическая таксономия.
scribu