如何讓WordPress媒體庫辨識.pdf檔?
WordPress的媒體庫(Media Library)預設只支援圖片、視訊和音頻,有時候這些是不夠用的,媒體庫允許上傳的文件種類眾多,需要更細化的分類,例如pdf檔
推薦:《wordpress教學》
#讓媒體庫支援pdf分類
這段來自tutsplus的程式碼可以幫助我們達到如上圖的效果,將程式碼放到主題的functions.php中
程式碼如下
function modify_post_mime_types( $post_mime_types ) { // 选择mime类型,这里用: 'application/pdf' // 然后扩充数组,定义label的文字 $post_mime_types['application/pdf'] = array( __( 'PDFs' ), __( 'Manage PDFs' ), _n_noop( 'PDF <span class="count">(%s)</span>', 'PDFs <span class="count">(%s)</span>' ) ); // then we return the $post_mime_types variable return $post_mime_types; } // Add Filter Hook add_filter( 'post_mime_types', 'modify_post_mime_types' );
到媒體庫上傳一個pdf文件,就可以看到效果了。
如何支援更多分類
WordPress支援的檔案類型在wp_includes/functions.php中有寫,搜尋
程式碼如下:
function get_allowed_mime_types()
就可以找到這些類型
程式碼如下:
'jpg|jpeg|jpe' => 'image/jpeg', 'gif' => 'image/gif', 'png' => 'image/png', 'bmp' => 'image/bmp', 'tif|tiff' => 'image/tiff', 'ico' => 'image/x-icon', 'asf|asx|wax|wmv|wmx' => 'video/asf', 'avi' => 'video/avi', 'divx' => 'video/divx', 'flv' => 'video/x-flv', ...
找到自己需要的型別,依照
程式碼如下:
$post_mime_types['application/pdf'] = array( __( 'PDFs' ), __( 'Manage PDFs' ), _n_noop( 'PDF <span class="count">(%s)</span>', 'PDFs <span class="count">(%s)</span>' ) );
的寫法,將'application /pdf'替換成需要的mime類型即可,後面的文字也要相應改一改。這是php中增加陣列成員的方式,當然可以增加更多陣列元素實作支援多個自訂類型。
以上是如何讓WordPress媒體庫識別.pdf文件的詳細內容。更多資訊請關注PHP中文網其他相關文章!