全民淘
优惠一起淘

wordpress DUX主图 文章缩略图不显示 问题解决

最近要用worldpress建个分享网站: http://www.qmtao.com

在网上找到了一个叫做DUX的主题看上去还很不错哟。

因为是worldpress的新手,二次开发还不太会,所以就开始折腾了起来,先是解决了链接问题,然后解决了url图片上传问题,

因为里面有一个模块是做图片的分享是,所以要用文章的第一张图片做文章的默认缩略图。。没有图岂不是很尴尬

但是这个主题本身是已特色图片作为文章的缩略图,所以很尴尬。。

在我了解了这个文件的架构的情况下,我找到了一个控制其缩略图的函数文件:functions-theme.php

在这个文件中一个函数:_get_post_thumbnail

这个函数加载了缩略图,我把他修改成了以下的函数,就可以显示第一张图片做缩略图了。

下面是具体的代码:

function _get_post_thumbnail($size = 'thumbnail', $class = 'thumb') {
    global $post;
    $html = '';
    if (has_post_thumbnail()) {
        /*$domsxe = simplexml_load_string(get_the_post_thumbnail());
        $src = $domsxe->attributes()->src;
        $src_array = wp_get_attachment_image_src(_get_attachment_id_from_src($src), $size);
        $html = sprintf('<img data-src="%s" class="%s"/>', $src_array[0], $class);*/
        $domsxe = get_the_post_thumbnail();
        // print_r($domsxe);
        preg_match_all('/<img.*?(?: |\\t|\\r|\\n)?src=[\'"]?(.+?)[\'"]?(?:(?: |\\t|\\r|\\n)+.*?)?>/sim', $domsxe, $strResult, PREG_PATTERN_ORDER);
        $images = $strResult[1];
        foreach($images as $src){
            $html = sprintf('<img data-src="%s" class="thumb">', $src);
            break;
        }
    }else {
        $post_thumbnail_src = '';
        ob_start();
    ob_end_clean();
    $output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
    $post_thumbnail_src = $matches [1] [0];   //获取该图片 src
    if(empty($post_thumbnail_src)){
        $random = mt_rand(1, 10);
        $post_thumbnail_src = get_bloginfo('template_url').'/img/pic/'.$random.'.jpg';
        }
        $html = sprintf('<img data-src="%s" class="thumb">', $post_thumbnail_src);
    }
    return $html;
}

 

 


自带图床调试中,如上传不显示可用下面插入图片 ![](图片地址)
 收藏 (0) 打赏

您可以选择一种方式赞助本站

支付宝扫一扫赞助

微信钱包扫描赞助

未经允许不得转载:全民淘 » wordpress DUX主图 文章缩略图不显示 问题解决
分享到: 更多 (0)