选项1:在所有帖子上强制使用特色图片
使用save_post
钩子,如果启用了修订,则每次“保存”操作都会运行两次。您可以通过检查$_POST
数据(第一次是空的)。
add_action(\'save_post\', \'wpse_force_featured_image\', 20, 2);
function wpse_force_featured_image($post_id, $post) {
// If this is a "Post" and $_POST data is present
if(count($_POST) > 0 && $post->post_type == \'post\') {
// Check if featured image is missing
if(!isset($_POST[\'_thumbnail_id\'])) {
// Add your desired fallback featured image
add_post_meta($post_id, \'_thumbnail_id\', \'my_fake_id\');
}
}
}
您必须确保ID是媒体库中的真实图像。此外,这只适用于新帖子,以及添加代码后更新的帖子。任何旧帖子都必须逐个更新。
选项2:更新主题以包括回退
无论您在主题中使用特色图像的何处,都可以添加一个备用图像。例如,如果single-post.php
你有点像
if(has_post_thumbnail()) {
the_post_thumbnail();
}
您可以将此更改为
if(has_post_thumbnail()) {
the_post_thumbnail();
} else {
echo \'<img src="image_url.jpg" alt="alt text" />\';
}
好处是,这将立即为所有帖子添加一个回退—您不必返回并更新帖子或添加新帖子即可看到这一点。(如果您还没有子主题或自定义主题,则需要创建一个,以便不编辑父主题文件。)