Я сделал свой собственный сервис загрузки для своего сайта, который отделен от WP, но использует WP для обеспечения функций низкоуровневой базы данных и проверки пользователя. Для этого я включаю wp-load.php в свой основной скрипт (Uploadify), но при этом кажется, что он наполняет память сервера ненужными компонентами. Благодаря этому я вижу ошибку в моем скрипте, которая указывает на установленный плагин WP.
Как я могу загрузить только основные компоненты WP и игнорировать плагины? Это вообще возможно?
Ответы:
Полное отключение плагинов означает, что вы потеряете много преимуществ.
Существуют дистрибутивы WordPress, которые идут дальше и вырывают посты, ссылки и т. Д., Но они всегда будут отставать от ядра WordPress и, как правило, не выживают так долго.
Вот некоторые вещи, которые можно сделать
Короткая инициатива
Поместив это в ваш wp-config.php:
Или определение его где-то перед загрузкой в WordPress, должно уменьшить процесс загрузки и вернуть его к минимальным основным функциям.
Вторичные легкие установки
Установите вторую установку WordPress, используя только те плагины и темы, которые вы хотите (если есть). Затем настройте wp-config.php, чтобы использовать один и тот же каталог wp-content и значения базы данных.
Backpress
WordPress, оригинальный BBpress и glotpress, помимо прочего, построены вокруг библиотеки BackPress. Вы можете использовать это вместо WordPress для выполнения своей работы, хотя многие API и функции могут отсутствовать или нуждаются в повторной реализации / портировании
Варианты таблиц
Я также хотел бы иметь в виду, что WordPress загружает всю таблицу параметров в память, чтобы сократить количество запросов, если вы сохраняете там большие значения, это влияет на производительность.
Выход рано
Вы также можете попробовать подключиться к более ранним функциям в процессе загрузки WordPress и выйти из процесса PHP до завершения WordPress, но я не могу посоветовать, насколько это безопасно.
Выборочная загрузка плагинов
Есть также эта статья о выборочной загрузке плагинов , но она требует взлома файлов ядра WordPress.
источник
Используйте BackPress , но у меня есть небольшие разработки, где я использую установку по умолчанию и меньший источник через const.
увидеть на
wp-settings.php
Установите const SHORTINIT на true в
wp-config.php
и посмотрите быстрый бег.define( 'SHORTINIT', TRUE );
Это файлы, которые вы получаете:
источник
Для создания
is_user_logged_in()
иcurrent_user_can()
работы я нашел подобный ответ здесь (не могу комментировать) Сравнение соответствует ответам здесь, как:Использование
define('SHORTINIT', true)
+require('wp-load.php')
+ вручную включает в себя:Загрузка страницы: 1,05 сек - включены файлы: 43 файла
Сравнение: используя ТОЛЬКО
require('wp-load.php')
:Загрузка страницы: 1,35 сек - включены файлы: 419 файлов
Хорошей идеей было использовать относительный вызов WP установленного каталога. Из пользовательского плагина Wordpress "ROOT" вроде:
Тогда внутри моего плагина index.php:
После этого у меня работает проверка пользователей. Спасибо @Anna Ericson последним словам из оригинального кода:
источник
Ты пробовал
define('SHORTINIT', true);
? Я не тестировал его сам, но, похоже, он загружает очень мало аспектов ядра WP, сохраняя при этом достаточную функциональность, особенно если вам нужно только иметь дело с базой данных.источник