在开发WordPress 主题的时候,为了丰富网页,常常使用到特色图像功能;这就要求主题使用者为每篇文章都要设置个特色图像,但总有一些用户不会乖乖按要求做;如此一来,主题的实际演示效果就大打折扣了。因此,开发者有必要强制让用户设置 特色图像 后才能发表文章。
对于在WordPress 中强制设置特色图像才能发表文章,WordPress 中有一个专门的插件:Require Featured Image。具体效果如下图:
但对于WordPress 开发者来说,集成到主题上面才是王道,毕竟让使用者再去安装一个插件是不现实的。直接将下面的代码添加到主题的functions.php 文件夹下:
//强制设置特色图像才能发表文章 devework.com add_action( 'pre_post_update', 'dw_dont_publish' ); function dw_dont_publish($post_ID) { $post = get_post($post_ID); $request_publish_test = isset($_REQUEST['publish']); $request_under_status_test = isset($_REQUEST['_status']) && $_REQUEST['_status'] == 'publish'; if ( $post->post_type == 'post' && ( $request_publish_test || $request_under_status_test ) && !has_post_thumbnail($post_ID) ) { wp_die( '必须设置特色图像才能发表文章' ); } } |
代码即是来源Require Featured Image 插件,略不同于插件的效果是因为没有加载相关js 代码,因为本人觉得没必要加载。