Obtenez de l'installation de WordPress chemin d'accès au dossier
Est-il un moyen d'obtenir le chemin d'accès où WordPress est installé?
J'ai été en utilisant les suivantes:
$root = realpath($_SERVER["DOCUMENT_ROOT"]);
C'est bien pour www.example.com -> /usr/local/pem/vhosts/165312/espace/httpdocs
Il n'est pas d'amende pour www.example.com/blog depuis que j'ai besoin de coder en dur le nom du dossier (le blog).
Plus tard, j'ai trouvé un moyen en utilisant ce:
$iroot = getcwd();
$folder = explode("/", $iroot);
$dir = $folder[8]; //I know is 8
$root = realpath($_SERVER["DOCUMENT_ROOT"]);
require "$root/$dir/wp-blog-header.php";
Mais il y a encore beaucoup de choses compliquées. Est-il un moyen simple d'obtenir où WordPress est installé (le chemin) sans codage en dur?
Note: 1 WordPress fonctions ne fonctionnera pas puisque c'est en quelque sorte en dehors de WordPress. Comme indiqué sur le dernier exemple, le point entier de déterminer l'installation de WordPress chemin est à require "wp-blog-header.php";
sur plusieurs installations WordPress où chaque installation utilise un autre dossier (example.com/blog-one et example.com/blog-two), pas de WordPress MU ou multi-site.
Note: 2 Si, au lieu de require "$root/$dir/wp-blog-header.php";
- je utiliser require "wp-blog-header.php";
il fonctionnera tant que le fichier est dans le même dossier, mais dans mon cas, le fichier sera parfois dans un dossier différent.
Vous le poster que comme une réponse avec un exemple ? C'est une bonne idée.
OriginalL'auteur user983248 | 2012-06-08
Vous devez vous connecter pour publier un commentaire.
Utiliser le ABSPATH constante:
Ce imprimer votre WordPress chemin.
OriginalL'auteur Estevão Lucas
Voici ce que j'ai fais:
Installation:
Utilisation:
Cela fonctionne très bien pour moi au moment de l'instanciation d'un WordPress environnement, quel que soit l'endroit où le script est. Certainement besoin de les désinfecter avant de les utiliser tout $_SERVER variables (et j'ai besoin de triplecheck ce en dehors de mon localhost environnement), mais je ne pense pas que cela nécessite de graves modifications à mettre en pratique une solution universelle.
OriginalL'auteur akamaozu
Racine exemple:
L'exemple ci-dessous fonctionnent sur tout des blogs ("blog", "blog-deux" et "quelques-blog") et le script ou un fichier peut être installé sur tout sous-dossier du blog.
Cela rend le script indépendant. Le script fonctionne sur n'importe quel dossier sur toute installation de WordPress installation tant que le dossier est le numéro 8. Si l'installation est dans un sous-dossier, le numéro 8, doit être augmentée. Aussi garder à l'esprit que le chemin d'accès actuel peut avoir plus ou moins de dossiers, ce qui signifie que le script doit être adapté en conséquence.
Note: Ce sera la "codage en dur" le dossier la position sur le chemin et, tant que tous les travaux d'installation ont la même position, le script fonctionne. L'inverse est coder en dur.
OriginalL'auteur user983248
Si ce que vous cherchez pour est le répertoire courant de l'endroit où le fichier appelé est situé, puis-je utiliser:
Beaucoup de cela dépend de l'endroit où se trouve le fichier. Si c'est dans le même répertoire que l'installation de WordPress, alors il pourrait être quelque chose comme:
Désolé à ce sujet. Oublié d'ajouter le nom du dossier à dépouiller le nom du fichier le chemin d'accès. Juste mis à jour. Et vous devez le taper comme est.
désolé, mais il ne fonctionne que si le script est situé sur le même dossier. Je cherche une solution un peu plus souple, que l'on peut travailler sur n'importe quel dossier comme indiqué dans la Note 2 sur la question.
Malheureusement, ce que vous décrivant va vous demander de vous suivre où se trouvent les fichiers d'une certaine façon de référence et le chemin de cette façon. Au lieu de cela, je recommande d'avoir un script pour cette dans chacun des répertoires de WordPress que puis appeler la généralisation de l'emplacement pour le reste f le code. Un chargeur de script de base. Quelque chose d'autre va être difficile à mettre en œuvre et difficile à gérer à long terme.
OriginalL'auteur Drahkar
C'est la façon de le faire de l'intérieur de WordPress (ce qui n'est pas ce que l'interlocuteur a été demander, mais ce que je soupçonne que beaucoup de gens seront à la recherche de...)
Il y a une fonction dédiée, get_home_path(), qui vais vous donner quelque chose comme:
D'autres fonctions pour les fichiers et les répertoires de contenu (web et chemins).
OriginalL'auteur William Turrell
Si vous pouvez atteindre la base de données, vous devez faire
dans le fichier wp-blog-header.php.
Puis se connecter à la base de données à partir de n'importe quelle application et récupérer le chemin d'accès avec la requête suivante:
Bien sûr, il serait nécessaire de connaître le nom de base de données et le préfixe de table de WordPress.
PS: Cela peut ou peut ne pas être votre solution, mais c'est l'une des manières.
OriginalL'auteur FatalError
Pourquoi ne pas simplement faire ce qui suit dans le wp-config.php:
par exemple
sera de retour "/un/deux/trois" et
sera de retour ""
OriginalL'auteur user787348
Vous donnera l'WordPress racine.
Par exemple, votre adresse de racine est http://www.myroot.com et votre site WordPress est dans le répertoire WordPress dans public_html, wwww.myroot.com/wordpress/sera le résultat dans $WP_PATH. Dans un tel cas, votre nom de fichier doit être dans votre plugin répertoire racine. Comme some_plugin est mon nom de plugin. Si le chemin d'accès complet deviendra:
Et
localhot/wordpress/wp_content/plugins/some_plugin/myfile.php
est mon nom de fichier où j'ai écrit ce script, qui me donnera/wordpress
. Cela a fonctionné pour moi que je voulais que mon wordpress nom de répertoire. Alors regardez pour le contenu comme ceci:OriginalL'auteur Sahib Khan