Rumah  >  Artikel  >  Tutorial CMS  >  如何让WordPress媒体库识别.pdf文件

如何让WordPress媒体库识别.pdf文件

藏色散人
藏色散人asal
2020-01-02 09:48:152276semak imbas

如何让WordPress媒体库识别.pdf文件

如何让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( &#39;PDF <span class="count">(%s)</span>&#39;, &#39;PDFs <span class="count">(%s)</span>&#39; ) ); 
// then we return the $post_mime_types variable 
return $post_mime_types; 
} 
// Add Filter Hook 
add_filter( &#39;post_mime_types&#39;, &#39;modify_post_mime_types&#39; );

到媒体库中上传一个pdf文件,就可以看到效果了。 

如何支持更多分类 

WordPress支持的文件类型在wp_includes/functions.php中有写,搜索一下 

代码如下:

function get_allowed_mime_types()

就可以找到这些类型 

代码如下:

&#39;jpg|jpeg|jpe&#39; => &#39;image/jpeg&#39;, 
&#39;gif&#39; => &#39;image/gif&#39;, 
&#39;png&#39; => &#39;image/png&#39;, 
&#39;bmp&#39; => &#39;image/bmp&#39;, 
&#39;tif|tiff&#39; => &#39;image/tiff&#39;, 
&#39;ico&#39; => &#39;image/x-icon&#39;, 
&#39;asf|asx|wax|wmv|wmx&#39; => &#39;video/asf&#39;, 
&#39;avi&#39; => &#39;video/avi&#39;, 
&#39;divx&#39; => &#39;video/divx&#39;, 
&#39;flv&#39; => &#39;video/x-flv&#39;, 
...

找到自己需要的类型,按照 

代码如下:

$post_mime_types[&#39;application/pdf&#39;] = array( __( &#39;PDFs&#39; ), __( &#39;Manage PDFs&#39; ), 
_n_noop( &#39;PDF <span class="count">(%s)</span>&#39;, &#39;PDFs <span class="count">(%s)</span>&#39; ) );

的写法,将‘application/pdf’替换成需要的mime类型即可,后面的文字也要相应改一改。这是php中增加数组成员的方式,你当然可以增加更多数组元素实现支持多个自定义类型。 

Atas ialah kandungan terperinci 如何让WordPress媒体库识别.pdf文件. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn