Eu li cerca de 2 métodos para inicializar a função do WordPress fora dos arquivos do WordPress, para que possamos usar essas funções em qualquer página ou site fora do blog do WordPress.
Qual desses 2 métodos é o correto? Quais são os casos de uso de cada método, se ambos estiverem corretos? Qual é a deferência entre usar um método ou outro?
Método 1:
<?php
define('WP_USE_THEMES', false);
require('./wp-blog-header.php');
?>
Método 2:
<?php
define('WP_USE_THEMES', false);
require('./wp-load.php');
?>
php
wp-load.php
wp-blog-header.php
alhoseany
fonte
fonte
Respostas:
Há pouca diferença entre os arquivos. Quando você visualiza uma página do WordPress, o primeiro arquivo chamado é
index.php
. E é, essencialmente, o seu "Método 1:"O arquivo de cabeçalho do blog (que enfileira o restante do WordPress) é carregado
wp-load.php
diretamente e aciona o próprio WordPress. Aqui está a maioria doswp-blog-header.php
:Então a diferença entre seus dois métodos é ... o que está carregado.
O método 1 é exatamente o que o WordPress faz para se carregar (com a exceção de desativar os temas). Portanto, se você precisa de todo o WordPress e deseja disparar todos os ganchos / ações padrão, siga essa rota.
O método 2 é apenas mais um passo abaixo da linha. Ele carrega todo o WordPress, mas não chama
wp()
ou invoca o carregador de modelos (usado pelos temas). O método 2 será um pouco mais leve, mas deve oferecer a mesma funcionalidade.fonte
Método 2 da sua pergunta:
wp-load.php
é o acesso a todas as funções do WordPress, só isso. A primeira linha diz ao WordPress para carregar não os arquivos do tema; talvez os arquivos sejam necessários para suas necessidades e remova a linha.fonte
wp-blog-header.php anexará um status de cabeçalho, retornará um código de status http 404
O wp-load.php não
Útil observar ao usar o ajax, pois verifica o código de status http
fonte
Às vezes, carregar o functions.php do tema pode causar alguns problemas. Estava quebrando o html da minha outra página. Então foi isso que fiz e resolvi meu problema:
fonte
@ ninja08
Podemos usar a extensão php xDebug para analisar um script.
basta ativar o
;xdebug.profiler_enable = 1
seuphp.ini
arquivo removendo o;
primeiro da linha e após a reinicialização do servidor apache e execute o seu site wordpress ... agora um arquivo criado no diretório tmp do seu servidor xampp .. abra esse arquivo com o aplicativo WincachGrind .agora você pode ver um mapa do seu script
fonte