WordPress从文章中获取第一张图片作为缩略图
假设您想使用WordPress 的缩略图功能,但有一个完整的文章需要花费太多时间才能完成。对于新文章,可以是特定的,并按预期使用该功能。对于旧文章,只想使用它在内容中找到第一个图像作为缩略图的,或者如果不存在则使用默认图。
将其添加到functions.php或制作功能插件:
function catch_that_image() { global $post, $posts; $first_img = ''; ob_start(); ob_end_clean(); $output = preg_match_all('/<img.+?src=[\'"]([^\'"]+)[\'"].*?>/i', $post->post_content, $matches); $first_img = $matches[1][0]; if(empty($first_img)) { $first_img = "/path/to/default.png"; } return $first_img; }
前端循环输出代码
if ( get_the_post_thumbnail($post_id) != '' ) { echo '<a href="'; the_permalink(); echo '" class="thumbnail-wrapper">'; the_post_thumbnail(); echo '</a>'; } else { echo '<a href="'; the_permalink(); echo '" class="thumbnail-wrapper">'; echo '<img src="'; echo catch_that_image(); echo '" alt="" />'; echo '</a>'; }

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
2020年Java基础高频面试题汇总(1.4W字详细解析)
1、 Java语言有哪些特点 (1)简单易学、有丰富的类库(2)面向对象(Java最重要的特性,让程序耦合度更低,内聚性更高)(3)与平台无关性(JVM是Java跨平台使用的根本)(4)可靠安全(5)支持多线程 2、面向对象和面向过程的区别 面向过程:是分析解决问题的步骤,然后用函数把这些步骤一步一步地实现,然后在使用的时候一一调用则可。性能较高,所以单片机、嵌入式开发等一般采用面向过程开发面向对象:是把构成问题的事务分解成各个对象,而建立对象的目的也不是为了完成一个个步骤,而是为了描述某个事物在解决整个问题的过程中所发生的行为。面向对象有封装、继承、多态的特性,所以易维护、易复用、易扩展。可以设计出低耦合的系统。 但是性能上来说,比面向过程要低。 3 、八种基本数据类型的大小,以及他们的封装类基本类型 大小(字节) 默认值 封装类 注:1.int是基本数据类型,Integer是int的封装类,是引用类型。int默认值是0,而Integer默认值是null,所以Integer能区分出0和null的情况。一旦java看到null,就知道这个引用还没有指向某个对象,2.基本数据类型在声明时...
- 下一篇
纯代码为wordpress文章添加标签无需插件实现
每当我们写文章的时候,都需要手动给 WordPress 文章添加标签,这样既能给访问者明确这篇文章的重点,也能够给网站的 SEO 带来很多好处。但是,每次都需要手动的添加耗费精力,那么,有没有可能实现自动为新文章添加标签的功能呢? 目前市面上没有一款完整的插件,我们只能够通过添加代码的方式添加。 首先打开主题的 function.php 文件将以下代码粘贴到 function.php 中 // WordPress 自动为文章添加已使用过的标签 function array2object($array) { // 数组转对象 if (is_array($array)) { $obj = new StdClass(); foreach ($array as $key => $val){ $obj->$key = $val; } } else { $obj = $array; } return $obj; } function object2array($object) { // 对象转数组 if (is_object($object)) { foreach ($object a...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS6,CentOS7官方镜像安装Oracle11G
- Hadoop3单机部署,实现最简伪集群
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Linux系统CentOS6、CentOS7手动修改IP地址
- Docker安装Oracle12C,快速搭建Oracle学习环境