Si desea crear su propio archivo .php e interactuar con WordPress sin encabezados 404 y mantener su estructura de enlace permanente actual, no es necesario un archivo de plantilla para esa página.
Descubrí que este enfoque funciona mejor, en su archivo .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();
?>
Luego, simplemente puede realizar cualquier función de WordPress después de esto. Además, esto supone que su archivo .php está dentro de la raíz de su sitio de WordPress donde wp-config.php
se encuentra su archivo.
Esto, para mí, es un descubrimiento invaluable ya que lo estaba usando require_once(dirname(__FILE__) . '/wp-blog-header.php');
durante mucho tiempo, ya que WordPress incluso te dice que este es el enfoque que debes usar para integrar las funciones de WordPress, excepto que causa encabezados 404, lo cual es extraño que deseen que utilices este enfoque. Integrando WordPress con su sitio web
Sé que muchas personas han respondido esta pregunta, y ya tiene una respuesta aceptada, pero aquí hay un buen enfoque para un archivo .php dentro de la raíz de su sitio de WordPress (o técnicamente en cualquier lugar que desee en su sitio), que puede navegar ¡y cargar sin encabezados 404!
Actualización: hay una manera de usar
wp-blog-header.php
sin encabezados 404, pero esto requiere que agregue los encabezados manualmente. Algo como esto funcionará en la raíz de su instalación de 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();
?>
Solo para actualizarlos a todos sobre esto, se necesita un poco menos de código para este enfoque, pero depende de usted cuál use.