Zoeken…


Invoering

Haal het absolute bestandssysteempad naar de root van de WordPress-installatie.

parameters

Parameter Details
Geen Deze functie accepteert geen parameters.

Opmerkingen

Belangrijk verschil tussen get_home_path() en ABSTPATH

Houd rekening met het verschil tussen ABSPATH en get_home_path() als u WordPress in een submap hebt geïnstalleerd.

De functie get_home_path() retourneert altijd een pad zonder de submap:

Dit is hoe het verschilt van ABSPATH , dat verschillende waarden zal retourneren:

ABSPATH wordt eerst gedefinieerd in wp-load.php die zich bevindt op /var/www/htdocs/example/wp/wp-load.php vandaar dat dit is waar ABSPATH zijn definitie van zal nemen.

get_home_path() controleert of site_url en home_url verschillen en verwijdert de substring uit het pad. Anders wordt de waarde ABSPATH :

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 );
}

Gebruik het in uw code

Het aanroepen van get_home_path() moet gebeuren in een context waarin wp-admin/includes/file.php al is opgenomen.

Het gebruik van get_home_path() binnen de hook admin_init is bijvoorbeeld prima, maar het gebruik ervan binnen de init is niet en zal resulteren in een fatale PHP-fout:

Call to undefined function get_home_path()

Dit bestand wordt alleen opgenomen vanuit de admin (dashboard) context, als je het absoluut buiten deze context nodig hebt, moet je het bestand zelf opnemen voordat je de functie aanroept:

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

Gebruik

$path = get_home_path();

Winstwaarde:

string

Volledig bestandssysteempad naar de root van de WordPress-installatie, zelfs als deze in een submap is geïnstalleerd.

Voorbeeld:

/var/www/htdocs/example



Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow