久久久精品2019免费观看_亚洲国产精品成人久久久_69国产成人综合久久精品91_国产精品久久精品视

WordPress函數(shù)_wp_relative_upload_path()用法

源代碼

File: wp-includes/post.php

function _wp_relative_upload_path( $path ) {
	$new_path = $path;

	$uploads = wp_get_upload_dir();
	if ( 0 === strpos( $new_path, $uploads['basedir'] ) ) {
			$new_path = str_replace( $uploads['basedir'], '', $new_path );
			$new_path = ltrim( $new_path, '/' );
	}

	/**
	 * Filters the relative path to an uploaded file.
	 *
	 * @since 2.9.0
	 *
	 * @param string $new_path Relative path to the file.
	 * @param string $path     Full path to the file.
	 */
	return apply_filters( '_wp_relative_upload_path', $new_path, $path );
}

更新日志

Version描述
2.9.0Introduced.

在WordPress中,_wp_relative_upload_path() 是一個(gè)內(nèi)部函數(shù),用于獲取上傳文件相對(duì)于WordPress上傳目錄的相對(duì)路徑。這個(gè)函數(shù)通常不推薦在主題或插件代碼中直接使用,因?yàn)樗赡軙?huì)在沒有通知的情況下在WordPress的未來(lái)版本中更改。
但是,如果你需要這個(gè)函數(shù)的用法,以下是其基本的使用方法:

$wp_upload_dir = wp_upload_dir();
$relative_path = _wp_relative_upload_path( $file_path );

這里是一個(gè)完整的例子:

// 獲取WordPress上傳目錄信息
$wp_upload_dir = wp_upload_dir();
// 定義一個(gè)文件路徑,假設(shè)這個(gè)文件位于上傳目錄內(nèi)
$file_path = $wp_upload_dir['basedir'] . '/my-custom-folder/my-image.jpg';
// 使用 _wp_relative_upload_path() 獲取相對(duì)路徑
$relative_path = _wp_relative_upload_path( $file_path );
// 輸出相對(duì)路徑
echo $relative_path; // 輸出可能是:my-custom-folder/my-image.jpg

在這個(gè)例子中,wp_upload_dir() 函數(shù)用于獲取WordPress的上傳目錄信息,包括基礎(chǔ)的URL和文件路徑。然后,我們使用 _wp_relative_upload_path() 函數(shù)傳入一個(gè)完整的文件路徑,該函數(shù)會(huì)返回該路徑相對(duì)于上傳目錄的相對(duì)路徑。
以下是 _wp_relative_upload_path() 函數(shù)的參數(shù):

  • $file_path:需要獲取相對(duì)路徑的文件的完整路徑。
    返回值:
  • 相對(duì)于WordPress上傳目錄的文件路徑。如果文件不在上傳目錄內(nèi),函數(shù)將返回 false
    再次強(qiáng)調(diào),由于 _wp_relative_upload_path() 是一個(gè)內(nèi)部函數(shù),因此最好避免在公共代碼中使用它。如果你需要獲取文件相對(duì)于上傳目錄的路徑,可以考慮以下替代方法:
$wp_upload_dir = wp_upload_dir();
$basedir = trailingslashit( $wp_upload_dir['basedir'] );
// 確保文件位于上傳目錄內(nèi)
if ( 0 === strpos( $file_path, $basedir ) ) {
    $relative_path = substr( $file_path, strlen( $basedir ) );
} else {
    // 文件不在上傳目錄內(nèi)
    $relative_path = false;
}
// 輸出相對(duì)路徑或錯(cuò)誤處理
if ( false !== $relative_path ) {
    echo $relative_path;
} else {
    // 錯(cuò)誤處理
    echo 'File is not in the upload directory.';
}

在上面的代碼中,我們使用了 wp_upload_dir() 來(lái)獲取上傳目錄的路徑,并使用 strpos()substr() 來(lái)計(jì)算相對(duì)路徑。這種方法不依賴于內(nèi)部函數(shù),因此更加穩(wěn)定和兼容。

未經(jīng)允許不得轉(zhuǎn)載:445IT之家 » WordPress函數(shù)_wp_relative_upload_path()用法

贊 (0) 打賞

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

微信掃一掃打賞