如何自动为WordPress文章添加特色图像
WordPress的特色图像是一个很实用的功能,可以在文章列表中为每篇文章添加一张缩略图。但特色图像需要在编辑文章时手动添加很不方便,下面的代码可自动将文章中的第一张图片设置为特色图像。
将下面的代码添加到当前主题的functions.php中:
function wpforce_featured() { global $post; $already_has_thumb = has_post_thumbnail($post->ID); if (!$already_has_thumb) { $attached_image = get_children( "post_parent=$post->ID&post_type=attachment&post_mime_type=image&numberposts=1" ); if ($attached_image) { foreach ($attached_image as $attachment_id => $attachment) { set_post_thumbnail($post->ID, $attachment_id); } } } } //end function add_action('the_post', 'wpforce_featured'); add_action('save_post', 'wpforce_featured'); add_action('draft_to_publish', 'wpforce_featured'); add_action('new_to_publish', 'wpforce_featured'); add_action('pending_to_publish', 'wpforce_featured'); add_action('future_to_publish', 'wpforce_featured');
如果当前文章中没有图片,但又想显示一张默认的缩略图该怎么办,可以将上面的代码修改一下,调用媒体库中某个图片作为默认的缩略图:
function wpforce_featured() { global $post; $already_has_thumb = has_post_thumbnail($post->ID); if (!$already_has_thumb) { $attached_image = get_children( "post_parent=$post->ID&post_type=attachment&post_mime_type=image&numberposts=1" ); if ($attached_image) { foreach ($attached_image as $attachment_id => $attachment) { set_post_thumbnail($post->ID, $attachment_id); } } else { set_post_thumbnail($post->ID, '414'); } } } //end function add_action('the_post', 'wpforce_featured'); add_action('save_post', 'wpforce_featured'); add_action('draft_to_publish', 'wpforce_featured'); add_action('new_to_publish', 'wpforce_featured'); add_action('pending_to_publish', 'wpforce_featured'); add_action('future_to_publish', 'wpforce_featured');
其中的数字414,是媒体库中某个图片附件的ID号。
提示
上面的代码只是一篇技术文章,可能会影响到之前添加的特色图像,所以不要轻易在自己的网站上做试验。
特色图像只适合不在乎空间流量和大小的用户使用,因为每张图片都会裁剪成多张大小不同的缩略图方便在不同的位置调用,最主要的是不支持外链,很浪费空间….
你可能还喜欢下面这些文章

我正在尝试在文档选项卡下添加一个新的组件面板,例如类别、特色图像等。UTM ссылка (необязательно)<input type=”text” name=”utm-post-class” id=”utm-post-clas

主题 Modules/Common/Post.php 467 行isset($post->ID)) return ”; return get_wpac_thumbnail($post_id);

有没有办法在 WordPress 循环代码中获取多个项目: if ($count<a href=”https://stackoverflow.com/questions/19303556/wordpress-loop-how-to-co

定时任务每次只会执行全部任务的一小部分,最终就可以自动更新所有的站点地图。比如我们生成的地图中有100页,分别是post-1,post-2,post-3。,那么每次定时任务会依次生成post-1,post-2,post-3。

$wp_admin_bar->add_action(‘admin_bar_menu’, ‘custom_toolbar_link’, 999);