如何在WordPress里使用Featured Image功能
2011-04-01 — Unmi

我想大部分人都很清楚WordPress 2.9版本开始,就增加了Featured Image这个功能。而且这样的功能多用于杂志式的主题,从里一个角度来说,用缩略图的形式比摘要输出形式更能体现网站的可读性!这里就介绍下如何为你的 WordPress主题添加Featured Image功能。

首先,看一看你的主题包,在functions.php文件里必须有下面的语句才能开启单篇日志以及页面里的Featured Image功能。

add_theme_support( 'post-thumbnails' );

当然,如果你只希望在单篇日志里开启这样的功能,只要加入

add_theme_support( 'post-thumbnails', array( 'post' ) );

页面功能同理:

add_theme_support( 'post-thumbnails', array( 'page' ) );

之后,你就需要设定你的缩略图大小,在保证图像不扭曲的情况下,图片的宽度或者高度会被自动按比例调整到最合适的大小,比如100×50像素的图 像,在一个固定为50×50像素大小的显示框下,会调整到50×25像素大小。这样的好处是能显示全部的图像。不过你可以发现,很多时候,缩略图的大小未 必能完全合适整个显示框的大小。比如刚刚的例子,至少还有一半的空间是空余的。因此,你可以自由设定显示框里缩略图的大小,比如单独限定高度或者宽度大 小。不过,这样设置,缩略图可能会扭曲或者只显示一部分。

一下这个定义语句表示现实框的大小为50X50像素,缩略图按比例自动调整。

set_post_thumbnail_size( 50, 50 );

再来看看下面这个定义语句。它表示缩略图会被自动截图成为大小为50X50像素。但是缺点很明显,它只是从坐标0,0开始截图,对于大图来说,它只是显示图片的冰山一角。

set_post_thumbnail_size( 50, 50, true );

现在,你可以开始讲这些定义语句添加在你的主题里,通常都被用在循环(the loop)定义里。

has_post_thumbnail() 将定义是否在当前日志里显示被手动添加的日志缩略图(in the loop)。

<?php
if ( has_post_thumbnail() ) {
// the current post has a thumbnail
} else {
// the current post lacks a thumbnail
}
?>

如果缩略图存在,下面这句定义将显示缩略图

<?php the_post_thumbnail(); ?>

以上这些都是最基本的定义。当然还有更深入的用法。

假设,如果你要在首页显示比较小的缩略图(比如50×50像素),但是在单独日志页面显示比较大的缩略图(比如宽度限定在400像素),你可以完全自定义。

在functions.php里:

add_theme_support( 'post-thumbnails' );
set_post_thumbnail_size( 50, 50, true ); // 非单独页面的显示设置
add_image_size( 'single-post-thumbnail', 400, 9999 ); // 单独日志页面显示设置,9999像素为的是给缩略图另一边大小以最大的空间

在home.php / index.php (取决于你的主题设计)(in the loop) :

<?php the_post_thumbnail(); ?>

在single.php (in the loop) :

<?php the_post_thumbnail('single-post-thumbnail'); ?>

希望你能看得明白以上的设置。

原理是,set_post_thumbnail_size () 对应 add_image_size ('post-thumbnail') 一起工作。同时,当你添加更多的设定到里面,比如add_image_size( $handle, $width, $height, {$hard_crop_switch} ); 然后the_post_thumbnail( $handle );就会开始工作,处理并按照你定义的缩略图样式。

当然,如果你要你的主题支持更早的WordPress版本,你必须得用function_exisit ()(以上的例子里并没有使用function_exisit (),为的是尽量让定义简单易用。):

if ( function_exists( 'add_theme_support' ) ) { // Added in 2.9
add_theme_support( 'post-thumbnails' );
set_post_thumbnail_size( 50, 50, true ); // Normal post thumbnails
add_image_size( 'single-post-thumbnail', 400, 9999 ); // Permalink thumbnail size
}

不过需要明白的是,这个功能只针对新上传的图片。假如你之前使用过带有缩略图显示功能的主题,并且新的主题对缩略图的大小设定有别于之前的主题,那么以前上传过的缩略图大小还是保持原来的大小,而新的缩略图将定义于新的设定。

不过这里推荐一个插件Regenerate Thumbnails,将帮助你调整缩略图大小。

转自:http://docolours.com/wordpress/howto-output-featured-image-function-theme.html

本文链接 http://unmi.cc/wordpress-enable-featured-image, 来自 隔叶黄莺 Unmi Blog

Wordpress里面的Set Featured Image相关推荐

  1. 简单两步干掉WordPress里面的fonts.googleapis

    诚然,谷歌的技术和做出来的产品还是很牛逼的,但是喜欢趴人家的内裤这点在哪里都是行不通的,这不土鳖开始和谐谷歌了,这就直接给使用WordPress的朋友带来了点小麻烦:访问WordPress站很慢,登陆 ...

  2. thinkphp url去掉index.php,thinkphp 去掉URL 里面的index.php(?s=)

    例如你的原路径是 http://localhost/test/index.php/home/goods/index.html 那么现在的地址是 http://localhost/test/home/g ...

  3. 打开wordpress里的index.php文件

    这里默认已经装好了phpstudy这个集成开发环境了,然后打开大概就是下面的这个界面. 为何上面说的是"大概"呢?对的,或许你们的和我现在这个界面有一点不一样的地方,就是php的版 ...

  4. PyTorch里面的torch.nn.Parameter()

    在刷官方Tutorial的时候发现了一个用法self.v = torch.nn.Parameter(torch.FloatTensor(hidden_size)),看了官方教程里面的解释也是云里雾里, ...

  5. servlet里面的context,定义属性值的事情!

    servlet里面的context,定义属性值. 在尚未指定属性值的时候.不管谁调用,都是NULL. 但是,一旦指定了属性值.那么,再次调用就是之间指定的数值啦! 而且,是象mapping一样存储对象 ...

  6. jQuery里面的datepicker日期控件默认是显示英文的,如何显示中文或其他语言呢?...

    jQuery里面的datepicker日期控件默认是显示英文的,如何让他显示中文或其他呢? [官方的写法]: (1)引入JS文件: <script type="text/javascr ...

  7. Angularjs $scope 里面的$apply 方法 和 $watch 方法

    Angularjs $scope 里面的$apply 方法 和 $watch 方法 学习要点: 1. Angularjs $scope 里面的$apply 方法 2. Angularjs $scope ...

  8. Android stdio build.gradle buildscript 里面的repositories 和allprojects里面 repositories 的区别

    第一段 buildscript 里面的 repositories 表示只有编译工具才会用这个仓库. 比如 buildscript 里面的 dependencies classpath 'com.and ...

  9. JAVA里面的int类型 和Integer类型,有什么不一样

    JAVA里面的int类型 和Integer类型,有什么不一样 原创 2013年09月04日 23:15:11 标签: java / 2120 编辑 删除 JAVA里面的int类型 和Integer类型 ...

最新文章

  1. python获取用户输入的数字_Python 将用户输入的数字 提取整数谢谢
  2. winform响应时间最长是多少分钟_了解这个,你的爬升勋章分分钟手到擒来!
  3. CF510C Fox And Names——拓扑排序练习
  4. [渝粤教育] 温州医科大学 医用高等数学 参考 资料
  5. 03、动态代理--CGLib引入增强
  6. 转载 foreach比递归效率低
  7. 家装强电弱电布线图_家装电路改造注意事项是什么?深圳广田家透彻分析全搞定...
  8. lucene分词器与搜索
  9. Azure SQL作業
  10. Codeforces Round #232 (Div. 1) 解题报告
  11. 【Jmeter】Jmeter使用教程
  12. 中兴网络设备交换机路由器查看日志命令方法
  13. 代码不规范,亲人两行泪——DTO
  14. 【word毕业论文排版(3)】word导出带有书签的PDF失败,转为用WPS成功
  15. 学习天才犹太人的经商法则
  16. cmd中为什么看不到python安装成功_cmd中运行python怎么切换目录? 怎么查看python中已安装的包...
  17. SQL+Tableau化妆品数据分析
  18. linux 内核编号含义_Linux kernel内核源代码代号:mainline、longterm的含义
  19. 疯狂的架构,BAT加华为、联想、新浪公司组织结构图一览
  20. 同时查询多个快递单号物流最简单实用的方法

热门文章

  1. Linux下的 command not found错误(解决方法)
  2. 通过拷贝block实现system文件大量坏块恢复
  3. linux qt地图开发教程,基于QT的电子地图的设计与实现
  4. es 查询一次性只返回10条数据的解决办法
  5. 精读《素书》精彩语录及感悟篇(二)
  6. 当逻辑表达式或者算法的计算过程冗长的时候该如何做的简单可读
  7. 阿里妹子,17分钟,机智化解一场重大宕机故障!
  8. 《超算竞赛导引》阅读笔记
  9. 渤海财险开启国产数据库替代之路,MogDB助推EAST系统升级
  10. 【抽屉原理】C. Dominant Character