Головна »Створення сайту на Wordpress, розкрутка сайту, пошукове просування і супровід
Чи не вантажаться сторінки Додати сторінку і Редагувати сторінку в WordPress
Так само хотілося б доповнити розповідь додатковими симптомами, ніж я і займуся в першу чергу:
- Сайт працює на VPS з 1 ГБ оперативної пам'яті з двоядерним процесором під зв'язкою Apache + Nginx + MySQL.
- На VPS сидять два сайти: цей блог і онлайн-кінотеатр, на якому і відбулася ситуація. Обидва сайти працюють на WordPress.
- З додаванням сторінок і редагуванням сторінок на другому сайті проблем не було ніяких. З редагуванням і додаванням записів на обох сайту було все тип-топ.
- Ці перші пункти говорили про те, що проблема швидше за все не в сервері, а суто зі сторінками на другому сайті. Це підтверджувалося тим, що за досить короткий час кількість сторінок на сайті було збільшено від декількох десятків до over 6000.
- Зі збільшенням кількості сторінок збільшувалася і час побудови сторінки Додати сторінку або Редагувати сторінку.
Наскільки я пам'ятаю, це були всі симптоми і тому переходжу з розгляду моїх жалюгідних, але дуже наполегливих і тривалих спроб повернути колишню працездатність даними сторінок:
Прибираємо пункт Батьківська з блоку Атрибути сторінки
А повністю завантаживши дану же сторінку (спроб через десяту-двадцяту) я побачив що має йти після цього відрізка коду. Побачивши я сильно зрадів, так як зрозумів, що знайшов причину всіх проблем, адже далі за кодом було перераховано абсолютно всі сторінки сайту, кожен з яких міг би стати «батьком» створюваної сторінки, завдяки відповідному блоку Батьківська, який надає список, що розкривається всіх сторінок. А тепер нагадаю, що це більше 6000 сторінок, які в базі даних займають трохи менше 10 МБ. Зрозуміло, що витягати цю справу кожного разу з бази даних було досить важко для СУБД MySQL (на жаль я так і не дізнався, про яку настройку MySQL спотикався відповідний запит). Але воно і не потрібно було мені. А так як повністю відмовитися від блоку Атрибути сторінки мені не дозволяло чимала кількість шаблонів для різних типів сторінок, необхідно було щипцями виколупати відповідний код з шаблону.
Необхідний нам блок коду був наступним:
Як бачите можна розгледіти тут рядки Батьківська (parent) і Шаблон (template) і зрозуміти, що це саме той розділ. А ось команда
явно відповідальна за виведення списку всіх сторінок, а функція
Таким чином я повністю позбавив себе всіх своїх проблем накопичуються за останні місяці, так як без цієї функції (абсолютно не потрібною мені в рамках даного проекту) сторінки Додати сторінку і Редагувати сторінку початку завантажуватися практично моментально, але ж до того як стати зовсім погано, ці сторінки відкривалися до 10 секунд.
Я пишу цю статтю і посміхаюся, я радий, що незважаючи на три дні постійного пошуку рішення не на тому боці і в той момент, коли руки вже опустилися, я зумів знайти потрібне рішення. До того ж я непогано став розбиратися в конфігурації MySQL, що теж є певним плюсом. У мене все.
Натисніть, якщо я зумів Вам допомогу
Чи варто оновлювати Windows?
Windows 10: тестування, оцінка та відгук про продукт
Основна і розширена підтримка операційних систем Windows
Як створити wim-образ Windows?
Брандмауер Windows в режимі підвищеної безпеки
Як підключити мережеву папку в Windows?
Як відновити пароль від Windows?
Можна поставити всі подібні скрипти в кінець сторінки - це зменшить проблему, але не позбавить від неї повністю, якщо скриптів кілька. Припустимо, в кінці сторінки 3 скрипта, і перший з них гальмує - виходить, інші два його чекатимуть - теж недобре.
Такий спосіб актуальний для оптимізації швидкості завантаження сторінок сайту. Але в описаному випадку це не підходить в корені, так як корінь проблеми в запитах до бд.