Suche…


Einführung

Holen Sie sich den absoluten Dateisystempfad zum Stammverzeichnis der WordPress-Installation.

Parameter

Parameter Einzelheiten
Keiner Diese Funktion akzeptiert keine Parameter.

Bemerkungen

Wichtiger Unterschied zwischen get_home_path() und ABSTPATH

Bitte beachten Sie den Unterschied zwischen ABSPATH und get_home_path() wenn Sie WordPress in einem Unterordner installiert haben.

Die Funktion get_home_path() gibt immer einen Pfad ohne den Unterordner zurück:

So unterscheidet es sich von ABSPATH , wodurch unterschiedliche Werte zurückgegeben werden:

ABSPATH wird zuerst in wp-load.php die sich unter /var/www/htdocs/example/wp/wp-load.php befindet. ABSPATH wird ABSPATH seine Definition übernehmen.

get_home_path() überprüft, ob sich site_url und home_url unterscheiden, und entfernt den Teilstring aus dem Pfad. Andernfalls wird der ABSPATH Wert zurückgegeben:

function get_home_path() {
    $home    = set_url_scheme( get_option( 'home' ), 'http' );
    $siteurl = set_url_scheme( get_option( 'siteurl' ), 'http' );
    if ( ! empty( $home ) && 0 !== strcasecmp( $home, $siteurl ) ) {
        $wp_path_rel_to_home = str_ireplace( $home, '', $siteurl ); /* $siteurl - $home */
        $pos = strripos( str_replace( '\\', '/', $_SERVER['SCRIPT_FILENAME'] ), trailingslashit( $wp_path_rel_to_home ) );
        $home_path = substr( $_SERVER['SCRIPT_FILENAME'], 0, $pos );
        $home_path = trailingslashit( $home_path );
    } else {
        $home_path = ABSPATH;
    }

    return str_replace( '\\', '/', $home_path );
}

Verwenden Sie es in Ihrem Code

Der Aufruf von get_home_path() muss in einem Kontext erfolgen, in dem wp-admin/includes/file.php bereits enthalten ist.

Die Verwendung von get_home_path() innerhalb des admin_init ist beispielsweise in Ordnung, aber die Verwendung innerhalb von init ist nicht und führt zu einem schwerwiegenden PHP-Fehler:

Call to undefined function get_home_path()

Diese Datei wird nur aus dem Admin-Kontext (Dashboard) eingefügt. Wenn Sie sie außerhalb dieses Kontextes unbedingt benötigen, müssen Sie die Datei selbst einschließen, bevor Sie die Funktion aufrufen:

require_once(ABSPATH . 'wp-admin/includes/file.php');

Verwendungszweck

$path = get_home_path();

Rückgabewert:

string

Vollständiger Dateisystempfad zum Stammverzeichnis der WordPress-Installation, auch wenn es in einem Unterordner installiert ist.

Beispiel:

/var/www/htdocs/example



Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow