Если вы хотите создать свой собственный файл .php и взаимодействовать с WordPress без 404 заголовков и сохранять текущую структуру постоянных ссылок, вам не нужен файл шаблона для этой одной страницы.
Я обнаружил, что этот подход работает лучше всего, в вашем файле .php:
<?php
require_once(dirname(__FILE__) . '/wp-config.php');
$wp->init();
$wp->parse_request();
$wp->query_posts();
$wp->register_globals();
$wp->send_headers();
// Your WordPress functions here...
echo site_url();
?>
После этого вы можете просто выполнять любые функции WordPress. Кроме того, это предполагает, что ваш файл .php находится в корне вашего сайта WordPress, где находится ваш wp-config.php
файл.
Для меня это бесценное открытие, так как я использовал require_once(dirname(__FILE__) . '/wp-blog-header.php');
его долгое время, поскольку WordPress даже говорит вам, что это подход, который вы должны использовать для интеграции функций WordPress, за исключением того, что он вызывает 404 заголовка, что странно, что они хотели бы вам использовать этот подход. Интеграция WordPress с вашим сайтом
Я знаю, что многие люди ответили на этот вопрос, и на него уже есть принятый ответ, но здесь есть хороший подход к файлу .php в корне вашего сайта WordPress (или технически где угодно на вашем сайте), который вы можете просмотреть загрузить и загрузить без 404 заголовков!
Обновление: есть способ использовать
wp-blog-header.php
без 404 заголовков, но для этого необходимо добавить заголовки вручную. Примерно так будет работать в корне вашей установки WordPress:
<?php
require_once(dirname(__FILE__) . '/wp-blog-header.php');
header("HTTP/1.1 200 OK");
header("Status: 200 All rosy");
// Your WordPress functions here...
echo site_url();
?>
Просто чтобы проинформировать вас об этом, немного меньше кода, необходимого для этого подхода, но вам решать, какой из них вы используете.