WordPress自动设置内容第一张图缩略图的方法

目前老蒋在使用这款WordPress主题的时候,如果不给文章设置缩略图的话,他就自动无缩略图,即便内容中是有图片的,也没有自动设置缩略图,这样体验效果不好。实际上,最好的用户体验就是,我们手动设置缩略图的时候以手工的为准。如果我们忘记设置,或者没有设置缩略图,那就以文章中的第一张图作为缩略图。

有没有办法实现呢?我去找找方法。

    // 设置自动缩略图
    add_theme_support ( 'post-thumbnails' );
    set_post_thumbnail_size ( 180 ); //图片大小

    function autoset_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);
                    }
                }
            }
     }
    add_action('the_post', 'autoset_featured');
    add_action('save_post', 'autoset_featured');
    add_action('draft_to_publish', 'autoset_featured');
    add_action('new_to_publish', 'autoset_featured');
    add_action('pending_to_publish', 'autoset_featured');
    add_action('future_to_publish', 'autoset_featured');

这样我们就可以给WordPress开启自动缩略图。这里还有一个问题,如果没有图的话,那就难看一些,最好加上默认自动缩略图,在无图的时候也给一张随机图(参考:WordPress无插件实现带缩略图相关内容调用)。

本文出处:老蒋部落 » WordPress自动设置内容第一张图缩略图的方法 | 欢迎分享( 公众号:老蒋玩运营 )