怎样实现WordPress网站读者墙

怎样让WordPress网站媒体库识别.pdf文件? WordPress的媒体库(Media Library)…

怎样让WordPress网站媒体库识别.pdf文件?

WordPress的媒体库(Media Library)默认只支持图片、视频和音频,有时候这些是不够用的,媒体库允许上传的文件种类众多,需要更细化的分类,比如pdf文件

 

媒体库支持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开发

本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。

评论 (0)COMMENT

登录 账号发表你的看法,还没有账号?立即免费 注册