2015-03-18 2 views
-1

После того, как сложно определить, какой плагин на моем сайте WordPress вызывает низкую скорость загрузки страницы, это, пожалуй, самый важный плагин ACF (дополнительные пользовательские поля Pro).Wordpress, кеширование дополнительных пользовательских полей или, возможно, другое решение?

Но я думаю, что знаю причину, я создал тему самостоятельно, ногами мои потребности, однако в этой теме пост-цикл загружает несколько полей ACF (и я просто должен сделать это, к сожалению), поля загружаются с основной функцией вызова get_field(), но, вероятно, потому, что эти поля находятся внутри цикла, это вызывает длительное время загрузки (чрезвычайно высокое, это фактически добавляет всего 4 секунды времени загрузки!).

Я разработчик, но я не профессионал, но насколько я понимаю, это происходит потому, что каждый раз, когда функция get_field() вызывает запрос, и это делает длительность загрузки длинных страниц, поэтому я понял, что, возможно, есть способ для кэширования всех полей, которые мне нужны до цикла, так что потребуется не так много времени для загрузки? Или, может быть, есть гораздо лучшее решение, о котором я не могу думать? Серьезно любые идеи приветствуются, потому что я застрял и надеюсь, что здесь кто-то здесь со свежей идеей.

ответ

1

Я не знаком с плагином ACF, но кажется, что вы очень уверены, что это вызывает проблему. По умолчанию настраиваемые поля не должны влиять на производительность, будь то одна или одна тысяча. См this post я делал по этому вопросу пользовательских полей

Я sugget, что скачать и установить плагин как Query Monitor который печатает всю необходимую информацию на экране о количестве вызовов БД и время, необходимое для каждого дб вызова. Просто заметьте, не запускайте это на производственной площадке. Сделайте это в локальной тестовой установке или поместите свой сайт в режим обслуживания. Вы не хотите, чтобы ваши пользователи просматривали страницы с информацией о запросах, которые им не будут иметь смысла :-). Как я уже сказал, плагин выводит информацию прямо на экран

+0

Большое спасибо Pieter, мой сайт еще не транслируется, поэтому я могу спокойно сделать это в прямом эфире, и я сделаю это прямо сейчас, надеюсь, с некоторыми результатами. –