Внешняя страница, встроенная в WordPress, возвращает ошибку 404

У меня есть сценарий, который я бы назвал через AJAX из моей темы WordPress, он опирается на некоторые основные функции WordPress, поэтому я включаю заголовок блога WordPress следующим образом:

define( 'WP_USE_THEMES', false );
require( '../../../../wp-blog-header.php' );

Где-то во время обработки wp-blog-header.php WordPress устанавливает заголовок 404, из-за которого мой запрос AJAX терпит неудачу, хотя скрипт, который я вызываю существует и возвращает содержимое.

С тех пор я добавил status_header( 200 ); после этого фрагмента, который изменяет заголовок состояния на 200 и решает проблему, однако он чувствует себя очень как хак, так что мне просто интересно, есть ли рекомендованное решение для этой проблемы?

7 голосов | спросил David Hancock 12 J000000Tuesday11 2011, 19:46:59

3 ответа


3

Вы должны включить wp-load.php, а не wp-blog-header.php (который зарезервирован для использования только WordPress). Это, скорее всего, причина вашей проблемы.

ответил shea 18 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowTue, 18 Sep 2012 10:06:23 +0400 2012, 10:06:23
1

Да, есть рекомендательное решение для использования функции WordPress через AJAX и используется крючки wp_ajax. вы можете увидеть очень подробный пример в моем ответе на вопрос «Какой предпочтительный метод написания плагинов с поддержкой AJAX?

ответил Bainternet 12 J000000Tuesday11 2011, 20:24:35
0

Вместо того, чтобы включать WordPress внутри «Solution A», считаете ли вы, что это делается наоборот, используя значительно улучшенный /простой WP AJAX API, а затем включающий «Решение A» внутри WordPress?

Вызов в wp-blog-header.php для AJAX является массовой ошибкой, я не могу подчеркнуть, насколько велика головная боль, которую вы вводите, безопасность и обслуживание мудрые (например, этот вопрос демонстрирует некоторые из них)

Какой предпочтительный метод создание плагинов с поддержкой AJAX?

Также включите wp-load.php not wp-blog-header.php

ответил Tom J Nowell 18 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowTue, 18 Sep 2012 15:55:06 +0400 2012, 15:55:06

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132