J'ai lu environ 2 méthodes d'initialisation de la fonction WordPress en dehors des fichiers WordPress afin que nous puissions utiliser ces fonctions sur n'importe quelle page ou site web en dehors du blog WordPress.
Laquelle de ces 2 méthodes est la bonne? Quels sont les cas d'utilisation de chaque méthode si les deux sont correctes? Quelle est la déférence entre l'utilisation de l'une ou l'autre méthode?
Méthode 1:
<?php
define('WP_USE_THEMES', false);
require('./wp-blog-header.php');
?>
Méthode 2:
<?php
define('WP_USE_THEMES', false);
require('./wp-load.php');
?>
php
wp-load.php
wp-blog-header.php
alhoseany
la source
la source
Réponses:
Il y a peu de différence entre les fichiers. Lorsque vous affichez une page WordPress, le premier fichier appelé est
index.php
. Et c’est essentiellement votre "Méthode 1:"Le fichier d'en-tête du blog (qui met en file d'attente le reste de WordPress) se charge
wp-load.php
directement et déclenche WordPress lui-même. Voici la plupart dewp-blog-header.php
:La différence entre vos deux méthodes est donc… ce qui est chargé.
La méthode 1 correspond exactement à ce que WordPress fait pour se charger (à l’exception de la désactivation des thèmes). Donc, si vous avez besoin de tout WordPress et que vous voulez déclencher tous les points d'ancrage / actions par défaut, choisissez cette route.
La méthode 2 n’est qu’un pas en avant. Il charge tout WordPress, mais n'appelle pas
wp()
et n'invoque pas le chargeur de modèles (utilisé par les thèmes). La méthode 2 sera un peu plus légère, mais devrait vous donner la même fonctionnalité.la source
Méthode 2 de votre question:
wp-load.php
est l'accès à toutes les fonctions de WordPress, c'est tout. La première ligne indique à WordPress de ne pas charger les fichiers de thème; peut-être que les fichiers sont nécessaires pour vos besoins, puis supprimez la ligne.la source
wp-blog-header.php va attacher un statut d'en-tête, il retournera un code de statut http de 404
wp-load.php ne sera pas
Utile à noter lors de l'utilisation d'ajax car il vérifie le code de statut http
la source
Parfois, le chargement du fichier functions.php du thème peut vous causer des problèmes. Il cassait le HTML de mon autre page. Voilà donc ce que j'ai fait et résolu mon problème:
la source
@ ninja08
Nous pouvons utiliser l'extension php xDebug pour analyser un script.
activez simplement
;xdebug.profiler_enable = 1
dans votrephp.ini
fichier en supprimant;
de la première ligne, puis après ce serveur apache redémarré et exécutez votre site wordpress ... maintenant un fichier créé dans le répertoire tmp de votre serveur xampp .. ouvrez ce fichier avec l' application WincachGrind .maintenant vous pouvez voir une carte de votre script
la source