wordpress 对于特色图片的处理

对于自定义的主题,可能会出现不显示特色图片的问题,可以使用以下方式显示缩略图.将以下代码放入激活主题的 functions.php 中即可

//开启缩略图
add_theme_support('post-thumbnails');
function get_post_img_url($thumbnail = true)
{
    global $post;
    if (has_post_thumbnail()) {
        $domsxe = simplexml_load_string(get_the_post_thumbnail());
        $thumbnailsrc = $domsxe->attributes()->src;
        return $thumbnailsrc;
    } elseif ($thumbnail) {
        $content = $post->post_content;
        preg_match_all('//sim', $content, $strResult, PREG_PATTERN_ORDER);
        $n = count($strResult [1]);
        if ($n > 0) {
            return $strResult [1] [0];
        } else {
            return trailingslashit(get_template_directory_uri()) . 'images/i1.png';
        }
    } else {
        return trailingslashit(get_template_directory_uri()) . 'images/i2.png';
    }
}

 根据文章 id 获取特色图片

/**
 * 获取特色图片地址
 * @param $post_id
 * @param string $size
 */
function get_post_thumbnail_url($post_id, $size = 1)
{
    $size_str = null;
    switch ($size) {
        case '1': //小图
            $size_str = 'thumbnail';
            break;
        case '2': //中图
            $size_str = 'medium';
            break;
        case '3': //大图
            $size_str = 'large';
            break;
        case '4': //原图
            $size_str = 'full';
            break;
    }

    $full_image_url = wp_get_attachment_image_src(get_post_thumbnail_id($post_id), $size_str);
    return $full_image_url[0];
}

 

 

你可能感兴趣的:(wordpress)