2010-08-07 6 views
1

J'essaie d'inclure un fichier (/wp-load.php) au début du répertoire/html /. Je suis en train de l'inclure de /wp-content/themes/pw-steel-orange/index-load.php, mais je reçois toujours le message d'erreurrequire wp-load.php 3 dossiers retour

Warning: require_once(../wp-load.php) [function.require-once]: failed to open stream: No such file or directory in /nfs/c07/h01/mnt/102799/domains/platyworld.com/html/wp-content/themes/pw-steel-orange/index-load.php on line 1

Fatal error: require_once() [function.require]: Failed opening required '../wp-load.php' (include_path='.:/usr/local/php-5.2.6-1/share/pear') in /nfs/c07/h01/mnt/102799/domains/platyworld.com/html/wp-content/themes/pw-steel-orange/index-load.php on line 1

Ai-je fait quelque chose de mal? Je croyais que ../ includes à apporte le répertoire commençant

Désolé si cela est un double, je ne pouvais pas trouver quelque chose lié à cela dans mes recherches ...

+2

WordPress devrait certainement charger vos fichiers de thème, pas l'inverse. Je ne recommanderais pas de charger wo-load.php à moins que vous ne deviez vraiment le faire. – dave1010

Répondre

2

Vous pouvez utiliser la commande suivante pour voir d'où vous extrayez le fichier (où vous en êtes):

// get your current working directory 
echo getcwd(); 

Ensuite, incluez le fichier en conséquence.

// file is 3 dirs back 
include '../../../wp-load.php'; 

Si vous utilisez un framework comme CodeIgniter, par exemple, il y aura un fichier index.php au début de votre application qui appellerez tout autre code. Vous devez donc inclure ce fichier en fonction de ce fichier.

La plupart des cadres utilisent un élément appelé BASEPATH qui correspond au chemin d'accès complet au serveur. Cela peut s'avérer très utile lors de la migration de votre site vers une autre destination.

+0

bizarre ... J'ai essayé le ../../../wp-load.php quelques fois et cela n'a pas fonctionné jusqu'à maintenant ... merci! – sman591

+1

@ sman591 les 3 niveaux de retour étaient une conjecture sauvage ...! :) J'essayais juste de vous faire savoir comment vous voyez avec 'getcwd' et ensuite ajuster en conséquence. Mais je suis content que ça a marché! ;) – Frankie

+0

http://ottopress.com/2010/dont-include-wp-load-please/ –

1

Voici une façon de le faire semi-automatique:

$incPath = str_replace("/wp-content/plugins/PLUGIN_NAME","",getcwd()); 
ini_set('include_path', $incPath); 
include('wp-load.php'); 

Peu importe cependant, il est encore un bad idea to include wp-load.php. (Si ce lien est jamais supprimé, See that page here)