當前位置: 首頁> 最新文章列表> 如何在WordPress 媒體庫中添加自定義文件類型過濾功能(以PDF 為例)

如何在WordPress 媒體庫中添加自定義文件類型過濾功能(以PDF 為例)

M66 2025-06-23

WordPress 默認媒體篩選功能的限制

在WordPress 的媒體管理器中,用戶默認只能按圖像、音頻和視頻三種類型篩選媒體文件。然而在某些網站項目中,如文檔驅動型網站,我們可能需要支持PDF 等附加格式的篩選。

目標:為媒體庫添加PDF 類型的過濾功能

為了增強WordPress 媒體庫的可用性,我們可以使用WordPress 提供的post_mime_types過濾器,來自定義支持的文件類型過濾條件。下面是具體實現方法。

實現方法:通過過濾器添加PDF 支持

以下代碼將向媒體庫的篩選器中添加PDF 文件類型:

 
function modify_post_mime_types( $post_mime_types ) {
    // 指定 MIME 類型:application/pdf
    // 設置顯示標籤
    $post_mime_types['application/pdf'] = array(
        __( 'PDFs' ),
        __( 'Manage PDFs' ),
        _n_noop( 'PDF (%s)', 'PDFs (%s)' )
    );
    return $post_mime_types;
}
add_filter( 'post_mime_types', 'modify_post_mime_types' );

只要媒體庫中存在至少一個PDF 文件,該過濾選項就會在後台媒體管理界面中顯示。

拓展:支持其他文件類型

除了PDF,你還可以使用類似的方法為其他MIME 類型添加篩選支持。 WordPress 默認支持的文件類型可以在wp-includes/functions.php文件中的get_allowed_mime_types()函數中找到。

以下是一些常見文件類型的MIME 類型映射示例:

 
'pdf'    => 'application/pdf',
'swf'    => 'application/x-shockwave-flash',
'mov|qt' => 'video/quicktime',
'flv'    => 'video/x-flv',
'js'     => 'application/javascript',
'avi'    => 'video/avi',
'divx'   => 'video/divx',

例如,如果你希望添加對Flash 文件的支持,只需使用application/x-shockwave-flash作為slug 即可。

總結

通過簡單的幾行代碼,你就可以顯著增強WordPress 媒體管理器的功能,使其更好地滿足特定項目需求。無論是添加PDF、視頻格式還是其他自定義文件類型,這種方法都非常高效。