新聞中心
圖像和其他媒體文件是任何wordpress網站的重要組成部分。要有效地使用它們,有助于牢牢掌握WordPress媒體庫的工作原理。

網站建設哪家好,找創(chuàng)新互聯(lián)公司!專注于網頁設計、網站建設、微信開發(fā)、小程序開發(fā)、集團企業(yè)網站建設等服務項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了武邑免費建站歡迎大家使用!
這個方便的WordPress功能使您能夠 隨著時間的推移存儲和管理您的圖像和其他媒體。通過一些內幕知識和一些簡單的技巧,您可以通過媒體庫做很多事情來改進您的網站。
在本綜合指南中,我們將帶您了解有關WordPress媒體庫的所有信息,包括如何導入和下載內容。我們還將介紹圖像編輯、長期文件管理和四個用于合并高級功能的技巧。
WordPress媒體庫簡介
就其核心而言,您的WordPress媒體庫正如其名稱所暗示的那樣:您上傳到網站的所有媒體文件的目錄:
WordPress媒體庫
WordPress能夠托管多種類型的媒體,包括:
- 圖像(.jpg、.jpeg、.png、.gif、。webp和.ico)。
- 音頻文件(.mp3、.m4a、.ogg和.wav)。
- 視頻(.mp4、.m4v、.mov、.wmv、.avi、.mpg、.ogv、.3gp和.3g2)。
- PDF文件。
- Word文檔。
- Excel電子表格。
- PowerPoint演示文稿。
- Adobe Photoshop文檔。
它還具有一些有限的照片編輯功能,因此您可以直接從儀表板根據(jù)需要進行調整。
要訪問您的媒體庫,只需隨時單擊管理側欄中的媒體 :
訪問WordPress媒體庫
這里有一些基本選項可用。
首先,您可以通過單擊相關圖標來確定是否要在列表或網格視圖中查看您的文件:
WordPress媒體庫視圖選項
您還可以使用下拉菜單過濾文件:
過濾WordPress媒體庫文件
第一個菜單使您可以按類型查看媒體,而第二個菜單將按上傳日期過濾您圖書館的內容。
您還可以使用搜索欄按名稱查找特定文件:
WordPress媒體庫搜索欄
最后,還有一個批量選擇按鈕。此功能可讓您一次從WordPress安裝中刪除多個文件:
WordPress媒體庫中的批量選擇選項
這涵蓋了WordPress媒體庫屏幕中可用的所有本機功能。
正如您稍后將看到的,您可以進行許多修改來增強它。但是,首先,我們需要討論如何將文件添加到WordPress。
如何將文件添加到WordPress媒體庫
您可以通過幾種不同的方式將文件(例如您網站的收藏夾圖標)添加到您的WordPress媒體庫。首先是導航到媒體> 添加新文件:
訪問WordPress媒體上傳器
在這里,您可以上傳保存在計算機或其他設備上的文件:
WordPress媒體上傳器
您還可以直接從WordPress編輯器添加媒體。在區(qū)塊編輯器中,首先為要合并的媒體類型添加相應的區(qū)塊:
WordPress媒體區(qū)塊
在生成的占位符中,選擇上傳并從您的計算機中選擇一個文件:
從區(qū)塊編輯器上傳媒體
或者,您可以簡單地將文件從桌面拖放到相關塊中。
在經典編輯器中,您需要單擊添加媒體按鈕:
經典編輯器添加媒體按鈕
然后導航到“上傳” 選項卡并從您的計算機中選擇一個文件:
從經典編輯器上傳媒體
您還可以隨時將文件從桌面直接拖放到編輯器中。
在某些情況下,您可能會發(fā)現(xiàn)需要通過FTP手動將媒體文件上傳到WordPress站點。您可以使用諸如FileZilla之類的客戶端來執(zhí)行此操作。
連接到服務器后,導航到wp-content > uploads:
通過FileZilla將文件上傳到WordPress媒體庫目錄
將文件上傳到此目錄以將它們添加到您的媒體庫。
從WordPress媒體庫下載內容
在某些情況下,您可能需要將文件從媒體庫下載到計算機上。WordPress使您可以通過導航到工具 > 導出來本地執(zhí)行此操作:
WordPress導出工具
然后選擇媒體選項。如果您只需要在特定時間范圍內上傳的文件,您可以使用下拉菜單來指定您的請求:
導出WordPress媒體
最后,單擊“下載導出文件”按鈕。這會將相關媒體文件下載到您的計算機。
如何在WordPress媒體庫中編輯圖像
正如我們之前提到的,WordPress具有一些原生圖像編輯功能。要訪問它們,請導航到您的 WordPress 媒體庫并選擇要編輯的文件。然后,單擊“編輯圖像” 按鈕:
WordPress中的“編輯圖像”按鈕
這將打開圖像編輯器:
WordPress圖像編輯器
您可以進行五種基本編輯:
裁剪使您能夠剪切圖像的某些部分:
WordPress中的圖像裁剪
旋轉圖像會將其逆時針或順時針旋轉90度:
圖像在WordPress中向左旋轉
翻轉圖像將垂直或水平反映它:
WordPress中的圖像水平翻轉
其他三個設置在側邊欄中。第一個使您能夠通過拉伸來更改圖像的大小。只需輸入所需的高度或寬度,另一個字段將自動填充。然后點擊拉伸按鈕:
在WordPress中拉伸圖像
請務必注意,在WordPress中調整圖像大小有時會對它們的質量產生負面影響。
此外,您只能拍攝大圖像并將其縮小。您無法將圖像放大到更大的尺寸!
要裁剪圖像以使其具有特定的縱橫比或尺寸,您可以使用圖像裁剪下的長寬比和選區(qū)字段:
在WordPress中設置圖像裁剪選擇尺寸
最后,如果您希望保留現(xiàn)有的圖像縮略圖,您可以使用縮略圖設置。只需選擇要應用更改的圖像版本的單選按鈕:
WordPress圖像編輯器中的縮略圖設置
WordPress的默認圖像編輯很有用,但也很有限。它不會取代您可能用于進行更廣泛修改的任何軟件,尤其是在您運行攝影網站或照片博客時。
了解WordPress媒體庫錯誤
不幸的是,發(fā)生了WordPress錯誤。WordPress媒體庫也不例外。
通常出現(xiàn)的一個問題是未指定的“HTTP錯誤” ,當您從編輯器中上傳新文件時可能會出現(xiàn)該錯誤:
媒體上傳的HTTP錯誤
通常,您只需等待此錯誤消失并在幾分鐘后再次嘗試上傳。如果HTTP錯誤再次出現(xiàn),則可能是您的WordPress會話已過期。您需要重新登錄 ,然后重試上傳。
一些用戶面臨的另一個問題是媒體庫無法加載。這通常是由于與您的插件和/或主題沖突。要解決此錯誤,請嘗試停用所有插件并切換到WordPress默認主題。
如果您的媒體庫再次正確加載,您需要進一步解決插件沖突問題以永久解決問題。
有時,當您開始通過媒體庫上傳文件時,可能會遇到“上傳:無法將文件寫入磁盤”錯誤。通常,當您的上傳目錄設置為不可寫時,會出現(xiàn)此問題。您可以通過WordPress 的站點健康工具檢查您的文件系統(tǒng)權限 。
長期媒體庫管理
到目前為止,當涉及到媒體庫時,我們只專注于WordPress的本機功能。但是,隨著時間的推移使用此功能,您可能會遇到一些需要外部解決方案幫助的問題。
例如,您添加的文件越多,您的WordPress媒體庫就越雜亂無章。除了本文開頭討論的搜索和過濾選項之外,WordPress并沒有為處理不規(guī)則的媒體提供太多幫助。
但是,有一些插件可以讓您將媒體文件排列到文件夾中。
WordPress Media Library Folders插件是最受歡迎的選項:
WordPress插件-WordPress Media Library Folders
除了使您能夠創(chuàng)建媒體文件夾外,該插件還與MaxGalleria集成, 讓您可以直接從媒體庫創(chuàng)建圖片庫:
WordPress插件-WordPress Gallery MaxGalleria
升級到WordPress Media Library Folders Pro提供了與NextGEN Gallery插件和Advanced Custom Fields的額外集成。它還使您能夠創(chuàng)建類別和標簽以進一步組織您的文件。
WordPress缺乏的另一個功能是用新版本替換媒體文件的能力。由于這些類型的文件可能非常大,因此您不想在需要更新內容時簡單地繼續(xù)添加新文件。
這意味著在上傳新文件后,您需要找到舊版本并將其刪除。您可以通過使用Enable Media Replace為ShortPixel直接替換舊圖像來節(jié)省一些時間:
WordPress插件-Enable Media Replace
使用此插件,您還可以替換指向舊文件的所有鏈接。這有助于避免整個站點中出現(xiàn)損壞的媒體。
Real Media Library是另一個值得一試的文件夾和文件管理器,讓您的文件管理變得輕而易舉。
WordPress插件-Real Media Library
多虧了它,您可以直接在WordPress中處理大量文件,例如圖片、視頻和文檔。很高興知道:Real Media Library有 12 種語言版本。如果免費版本不足以滿足您的需求,他們還提供具有更多功能的購買PRO版本。
4個WordPress媒體庫小技巧
WordPress媒體庫可以處理站點管理員的大多數(shù)常見要求。但是,WordPress提供了許多功能和鉤子,使用戶能夠增強媒體庫的特定功能,而無需使用第三方插件。讓我們通過四個實際示例深入了解這些函數(shù)和鉤子。
1. 將自定義元數(shù)據(jù)添加到附件文章類型
每當您上傳媒體文件時,WordPress都會生成一個附件文章類型。
就像任何其他文章類型一樣,附件在wp_posts表中注冊,它們各自的元數(shù)據(jù)可以在數(shù)據(jù)庫的wp_postmeta表中找到:
默認附件詳細信息面板
wp_posts表存儲包括數(shù)據(jù)POST_CONTENT(附件描述),post_excerpt(附件說明),post_author,POST_TITLE,post_status,和post_mime_type。
wp_postmeta表存儲任何類型的元數(shù)據(jù),如附加的文件URL,圖像尺寸和MIME類型,以及可交換圖像文件格式(EXIF)和國際報業(yè)電信委員會(IPTC)的元數(shù)據(jù)。
您可能偶爾需要向附件添加自定義元數(shù)據(jù),例如文檔作者的姓名、關聯(lián)的URL或照片的拍攝位置。向附件添加元字段與向帖子添加元字段有點不同,需要特定的鉤子和函數(shù)。
首先,您需要將所有必要的自定義字段添加到“編輯媒體” 屏幕。您可以通過wp-admin/includes/media.php中的attachment_fields_to_edit過濾器過濾可用附件字段來完成此任務。
function media_hacks_attachment_field_to_edit( $form_fields, $post ){
// https://codex.wordpress.org/Function_Reference/wp_get_attachment_metadata
$media_author = get_post_meta( $post->ID, 'media_author', true );
$form_fields['media_author'] = array(
'value' => $media_author ? $media_author : '',
'label' => __( 'Author' )
);
return $form_fields;
}
add_filter( 'attachment_fields_to_edit', 'media_hacks_attachment_field_to_edit', 10, 2 );
該函數(shù)有兩個參數(shù): 表單字段的$form_fields數(shù)組和$post對象。首先,get_post_meta檢索現(xiàn)有的“media_author” 值,然后將“media_author” 元素添加到$form_fields 數(shù)組中。
最后,回調返回$form_fields (參見Gist上的代碼)。
這將在“編輯媒體” 頁面上顯示一個新字段,您可以通過從媒體庫中選擇相關圖像并單擊“編輯更多詳細信息”鏈接來訪問該字段:
訪問WordPress編輯媒體頁面
在結果屏幕上,您將在底部看到新的自定義元數(shù)據(jù)字段:
新的“作者”元數(shù)據(jù)字段
下一步是保存用戶輸入。您可以通過將新函數(shù)掛鉤到edit_attachment動作來完成此操作:
function media_hacks_edit_attachment( $attachment_id ){
if ( isset( $_REQUEST['attachments'][$attachment_id]['media_author'] ) ) {
$media_author = $_REQUEST['attachments'][$attachment_id]['media_author'];
update_post_meta( $attachment_id, 'media_author', $media_author );
}
}
add_action( 'edit_attachment', 'media_hacks_edit_attachment' );
這個函數(shù)只保留一個參數(shù): 當前媒體文件的$attachment_id。首先,該函數(shù)檢查是否已發(fā)送自定義元字段的有效值。然后它通過update_post_meta函數(shù)注冊該值(參見Gist上的代碼)。
現(xiàn)在,您可以通過get_post_meta函數(shù)檢索“media_author”值:
$media_author = get_post_meta( $post->ID, 'media_author', true );
之后,您可以在前端的任何位置顯示它。
2. 在編輯媒體屏幕中顯示EXIF和IPTC元數(shù)據(jù)
WordPress自動存儲JPEG和TIFF mime類型的擴展元數(shù)據(jù)。現(xiàn)在您知道如何通過media.php將字段添加到“編輯媒體”屏幕,您可以顯示此數(shù)據(jù)。
要完成此任務,您必須按如下方式更改第一個回調函數(shù):
function media_hacks_attachment_fields_to_edit( $form_fields, $post ){
// get post mime type
$type = get_post_mime_type( $post->ID );
// get the attachment path
$attachment_path = get_attached_file( $post->ID );
// get image metadata
$metadata = wp_read_image_metadata( $attachment_path );
if( 'image/jpeg' == $type ){
if( $metadata ) {
$exif_data = array(
'aperture' => 'Aperture',
'camera' => 'Camera',
'created_timestamp' => 'Timestamp',
'focal_length' => 'Focal Length',
'iso' => 'ISO',
'shutter_speed' => 'Exposure Time',
'orientation' => 'Orientation' );
foreach ( $exif_data as $key => $value ) {
$exif = $metadata[$key];
$form_fields[$key] = array(
'value' => $exif ? $exif : '',
'label' => __( $value ),
'input' => 'html',
'html' => "ID][$exif]' value='" . $exif . "' />
);
}
}
}
return $form_fields;
}
add_filter( 'attachment_fields_to_edit', 'media_hacks_attachment_fields_to_edit', 10, 2 );
此代碼段使用以下WordPress功能:
- get_post_mime_type 根據(jù)ID檢索附件的MIME類型。
- get_attached_file 根據(jù)ID檢索附加文件路徑。
- wp_read_image_metadata 獲取EXIF或IPTC元數(shù)據(jù)(如果可用)。
如果圖像mime類型是“image/jpeg”,并且如果元數(shù)據(jù)存在,則聲明所需元數(shù)據(jù)的數(shù)組,并為數(shù)組中的每個元素創(chuàng)建一個表單字段:
WordPress附件詳細信息中的EXIF和IPTC元數(shù)據(jù)字段
這個例子的表單字段有點復雜,因為我們正在為‘html’表單元素設置一個值(參見Gist上的代碼)。您不需要保存EXIF和IPCT元數(shù)據(jù),因為WordPress在上傳圖像時會自動將它們存儲到wp_postmeta表中。
3. 在前端顯示擴展元數(shù)據(jù)
在后端為自己提供所有這些信息很有用。但是,如果您還想在前端顯示媒體文件的擴展元數(shù)據(jù),則需要做更多的修改。
為此,您可以使用wp-admin/includes/post.php中的the_content 過濾器將此信息附加到附件描述中,如下所示:
function media_hacks_the_content( $content ){
global $post;
if( is_attachment() && 'image/jpeg' == get_post_mime_type( $post->ID ) ) {
$fields = wp_get_attachment_metadata( $post->ID );
$meta = $fields['image_meta'];
if( ! empty( $meta['camera'] ) ){
$custom_content = "
- Camera: {$meta['camera']}
- Created timestamp: {$meta['created_timestamp']}
- Aperture: {$meta['aperture']}
- Focal length: {$meta['focal_length']}
- ISO: {$meta['iso']}
- Shutter speed: {$meta['shutter_speed']}
- Orientation: {$meta['orientation']}
此處 調用wp_get_attachment_metadata函數(shù)。如果當前文章類型為“附件”,并且當前 mime 類型為“image/jpeg”,則檢索可用圖像元數(shù)據(jù)并用于構建字段的無序列表,該列表附加到文章內容。
回調函數(shù)返回$content (請參閱Gist上的此代碼):
附件頁面上顯示的EXIF和IPTC元數(shù)據(jù)
在上方,您可以看到新的附件文章,元數(shù)據(jù)附加到說明中。
4. 發(fā)布照片檔案
開箱即用,WordPress不顯示附件檔案。發(fā)生這種情況是因為附件帖子類型的has_archive選項設置為false。
此外,雖然$query對象的默認post_status參數(shù)設置為“publish”,但默認附件post_status設置為“inherit”。這意味著除非我們將查詢post_status明確設置為“inherit”或“any”,否則檔案中不會顯示任何附件( 有關更多信息,請參閱WP_Query類型參數(shù))。
話雖如此,為了顯示圖像檔案,您必須定義兩個函數(shù)。第一個函數(shù)過濾指定文章類型的參數(shù),并將附件has_archive屬性設置為true:
function media_hacks_register_post_type_args( $args, $post_type ){
if( $post_type == 'attachment' ){
$args['has_archive'] = true;
}
return $args;
}
add_filter( 'register_post_type_args', 'media_hacks_register_post_type_args', 10, 2 );
第二個函數(shù)為post_mime_type和post_status查詢變量設置自定義值:
function media_hacks_pre_get_posts( $query ){
if ( !is_admin() && $query->is_main_query() ) {
if( is_post_type_archive('attachment') ){
$query->set('post_mime_type', 'image/jpeg');
$query->set( 'post_status', 'inherit' );
}
}
}
add_action( 'pre_get_posts', 'media_hacks_pre_get_posts' );
該函數(shù)與pre_get_posts動作鉤子掛鉤,該鉤子在創(chuàng)建查詢之后但在執(zhí)行之前觸發(fā)。在$query對象是按引用傳遞,而不是價值,這也就意味著當前實例任何改變$query會影響原來的$query對象。
出于這個原因,驗證您要更改哪個查詢很重要(請參閱Gist上的此代碼)。然后,如果您在瀏覽器中輸入https://yourdomain.com/?post_type=attachment,您應該會看到一個JPEG圖像存檔:
WordPress媒體檔案
所有這些hack的完整代碼都可以作為公共Gist中的插件獲得,我們已經通過本節(jié)鏈接到了它。您可以將其下載為.zip 文件并將其上傳到您的WordPress網站以實施所有這四種技巧,而無需手動編輯您的文件。
新聞名稱:WordPress媒體庫完整指南及小技巧
當前地址:http://fisionsoft.com.cn/article/dhjdjpe.html


咨詢
建站咨詢
