目前大多数主题都有前台投稿的功能,用户可以上传图片等文件,管理员是不希望用户上传任意的媒体文件,这时我们可以对用户上传的文件后缀进行判断,从而来限制上传的文件类型。
如多站点默认提供了允许上传的文件后缀选项,就把多站点的这个功能引用到主题中,代码如下:
//限制用户上传的媒体文件
function salong_check_upload_mimes( $mimes ) {
global $salong;
$site_exts = array('jpg','png'); //输入允许上传的文件后缀
$site_mimes = array();
foreach ( $site_exts as $ext ) {
foreach ( $mimes as $ext_pattern => $mime ) {
if ( $ext != '' && strpos( $ext_pattern, $ext ) !== false )
$site_mimes[$ext_pattern] = $mime;
}
}
return $site_mimes;
}
if(!is_multisite() && !current_user_can( 'manage_options')){
add_filter( 'upload_mimes', 'salong_check_upload_mimes' );
}
将以上代码添加主题 functions.php 文件中即可,第 4 行可修改允许上传的文件后缀。
注:代码第 14,16 行是对多站点和管理员进行排除,多站点的可以在『后台我的站点——管理网络——设置』中的『上传文件类型』设置,不需要可以删除这两行代码。
专业提供WordPress主题安装、深度汉化、加速优化等各类网站建设服务,详询在线客服!