前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >WordPress获取缩略图thumbnail调取最佳策略实践

WordPress获取缩略图thumbnail调取最佳策略实践

作者头像
AlexTao
修改2023-05-16 13:18:52
2K0
修改2023-05-16 13:18:52
举报
文章被收录于专栏:钻芒博客钻芒博客

给WordPress新站改模板调用分类缩略图时遇到了一个问题, 有个模块要调用缩略图显示,如下图:

但是在如何获取分类文章循环输出头疼了一天之后,循环出来之后又为缩略图调取方式头疼。最开始的策略(别人写好策略)的直接获取文章的特色图片,而我因为模板的原因,基本上习惯了不特殊设置特色图片,因为Grace可以自动获取第一张图片做特色图

。所以这种方法调用。图基本都是挂掉的。好了不废话了,进入今天的正题。

WordPress获取缩略图thumbnail调取最佳策略实践


首先优先级第一肯定是文章特色图片,如果没有设置特色图片,那么就调取文章里第一张图片来当缩略图,如果文章内也没有图的话,就直接调用主题设置好的默认缩略图,这样在各种场景都能有图可用。

画了一张思维导图,简单明了。

参考代码:

代码参考下边的文章:

下边是我的。需要的拿走。细节可以自己调整。

使用方法:

把下面代码放到你主题的functions.php

然后在需要调用的地方调用 dm_the_thumbnail() 即可

调用实例:

<img  src="<?php dm_the_thumbnail() ?>"  />

functions.php代码

/*  
  
* WordPress获取缩略图thumbnail调取最佳策略实践
  文章:https://www.zuanmang.net/5288.html
  项目基于:https://www.cnblogs.com/bojuetech/p/4891470.html
  转载请不要删除此段,不完整转载误人误己!
  钻芒博客:www.zuanmang.net (这段可以删233)
*/ 
// 缩略图开始

 if ( has_post_thumbnail() )  
    the_post_thumbnail( 'thumbnail' );

   
function dm_the_thumbnail() {  
   
    global $post;  
   
    // 判断该文章是否设置的缩略图,如果有则直接显示  
   
    if ( has_post_thumbnail() ) {  
   
        echo the_post_thumbnail();//这里直接输出特色图片
   
    } else { //如果文章没有设置缩略图,则查找文章内是否包含图片  
   
        $content = $post->post_content;  
   
        preg_match_all('/<img.*?(?: |\\t|\\r|\\n)?src=[\'"]?(.+?)[\'"]?(?:(?: |\\t|\\r|\\n)+.*?)?>/sim', $content, $strResult, PREG_PATTERN_ORDER);  
   
        $n = count($strResult[1]);  
   
        if($n > 0){ // 如果文章内包含有图片,就用第一张图片做为缩略图  
   
            echo $strResult[1][0] ; 
   
        }else { // 如果文章内没有图片,则用默认的图片。  
   
           echo  get_stylesheet_directory_uri() . '/img/thumb.png';  //具体路径根据自己调整
   
        }  
   
    }  
   
}  

// 缩略图结束
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • WordPress获取缩略图thumbnail调取最佳策略实践
  • 参考代码:
  • 使用方法:
  • 调用实例:
  • functions.php代码
相关产品与服务
网站建设
网站建设(Website Design Service,WDS),是帮助您快速搭建企业网站的服务。通过自助模板建站工具及专业设计服务,无需了解代码技术,即可自由拖拽模块,可视化完成网站管理。全功能管理后台操作方便,一次更新,数据多端同步,省时省心。使用网站建设服务,您无需维持技术和设计师团队,即可快速实现网站上线,达到企业数字化转型的目的。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档