Intereting Posts
Как использовать служебную программу для начинающих, чтобы показать некоторые меню по умолчанию? использование фильтров для функции из класса настройка боковой корзины из темы bronx Проблема при получении метаданных сообщений на пользовательской колонке Страница таксономии не работает Изменить постоянную ссылку для ТОЛЬКО для новых сообщений Невозможно получить jQuery UI для размещения в моем плагине! WordPress продолжает запрашивать информацию о подключении в локальном хосте Как удалить параметры объемного редактирования Проблема с использованием короткого кода в виджетах Должен ли я использовать переходные процессы для этих результатов вызова API? Пользовательский WordPress Walker Разрешить пользователям редактировать виджеты Список самых прочитанных сообщений за последние 7 дней (с настраиваемым типом сообщений и другими мета-запросами) Тема wp .. Не удалось создать каталог

Как загрузить WordPress на страницу без WP?

Я хочу использовать get_option() wordpress в одном из файлов моей темы, который не связан с WP, он просто находится в том же каталоге других файлов тем. Мне нужен этот файл из-за некоторых дополнительных действий, связанных с PayPal IPN, но мне нужны некоторые значения из таблицы опций, которая существует в WP, которая будет вызываться на этой странице, чтобы она работала. Я знаю, что я не могу просто использовать get_option() поскольку этот файл пропускается wordpress. Есть ли какой-либо подход, включив некоторые части wordpress в мою тему, чтобы эта функция работала?

Поверните внешний файл в плагин WordPress. Таким образом, у вас будет полный доступ к основным функциям WP.

Самый короткий путь – загрузить wp-load.php и прервать загрузку механизма шаблона (Примечание: вы не могли этого сделать, если бы вы загружали заголовочный файл, как вы видите его на многих сайтах в interweb) ,

 # No need for the template engine define( 'WP_USE_THEMES', false ); # Load WordPress Core // Assuming we're in a subdir: "~/wp-content/plugins/current_dir" require_once( '../../../wp-load.php' ); 

Самый простой способ – wp-load.php файл wp-load.php . Этот файл загрузит все ядро ​​WP, поэтому вы можете использовать функции WP, такие как get_option в вашем файле PHP:

 include 'path/to/wp-load.php'; echo get_option( 'option_name' ); 

Это должно работать на любой установке WordPress:

 <?php function load_wp_load() { $wp_did_header = true; require_once($_SERVER['DOCUMENT_ROOT'] . '/index.php'); $matches = preg_grep('/wp-blog-header.php/', get_included_files()); if (!empty($matches)) { $abspath = dirname(reset($matches)) . '/'; define('ABSPATH', $abspath); require_once(ABSPATH . '/wp-load.php'); } } ?>