WordPress 缩率图学习笔记

Wordpress在生成缩略图的过程中,有两种不同的规则

  • 缩放模式:缩放模式就是将图片等比例缩小,且新生成的缩略图长度或高度两者之中,有一个是你设置的缩略图的尺寸

    • 举例:
    • 假如设置缩率图 150 * 150 ,那么

      800 * 500 ---> 150 * 94;

      300 * 100 --> 150 * 50;

      100 * 100 --> 100 * 100【不发生裁剪】
  • 剪切模式,两种情景:

    • 上传的图片的高度和宽度,两者之中只要有一个尺寸小于设定的缩略图尺寸。则在原图的基础上剪切,而且是从图的中心点剪切。
    • 上传的图片的高度和宽度都大于设定的缩略图尺寸。则先将原图缩小(等比缩小,而且缩小的图片的高度和宽度中至少有一个大于缩略图设置的尺寸),然后在缩小的图片的基础上从中心点剪切。

相关函数

  • wp_get_attachment_image_src
<?php
wp_get_attachment_image_src( $attachment_id, $size, $icon ); ?> Array
(
[0] => url //图片地址
[1] => width //图片宽度
[2] => height //图片高度
[3] => boolean //true表示返回了缩放后的图片,false表示返回了原始图片
)
  • get_post_thumbnail_id($post->ID)
<?php if (has_post_thumbnail()){
$array_image_url = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), array(255,204));
echo $array_image_url[0];
} ?>
  • add_theme_support
if ( function_exists('add_theme_support') )add_theme_support('post-thumbnails');

  • add_image_size
add_image_size('video', 600, 370, true);//设置第二种样式名为show,长80,宽60,按照裁剪的方式裁剪缩略图

使用示例代码

//添加文章"特色图像"功能,即缩略图功能
if ( function_exists('add_theme_support') )add_theme_support('post-thumbnails');
//设置第二种样式名为show,长80,宽60,按照裁剪的方式裁剪缩略图
add_image_size('video', 600, 370, true); $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'thumbnail-video' );
//$image 为数组
//$image[0]为图片地址

相关插件

  • DNUI

  • Regenerate Thumbnails

参考链接

WordPress 缩率图学习笔记的更多相关文章

  1. 《容器化.NET应用架构指南》脑图学习笔记(第一部分)

    一.关于这本官方“圣经” 作为.NET程序员,对于微软官方推动的架构示例总是特别关注,从PetShop到MusicStore再到eShopOnContainers,每一次关注,都会了解到业界最新的架构 ...

  2. PHP-生成缩略图和添加水印图-学习笔记

    1.开始 在网站上传图片过程,经常用到缩略图功能.这里我自己写了一个图片处理的Image类,能生成缩略图,并且可以添加水印图. 2.如何生成缩略图 生成缩略图,关键的是如何计算缩放比率. 这里,我根据 ...

  3. E-R图学习笔记

    E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型.属性和联系的方法,用来描述现实世界的概念模型.   方法 编辑 E-R方法是“实体-联系方法”( ...

  4. UML类图学习笔记

    http://note.youdao.com/noteshare?id=d5af220db7081dda73511fcb7b4da390

  5. Nodejs学习笔记(三)——一张图看懂Nodejs建站

    前言:一条线,竖着放,如果做不到精进至深,那就旋转90°,至少也图个幅度宽广. 通俗解释上面的胡言乱语:还没学会爬,就学起走了?! 继上篇<Nodejs学习笔记(二)——Eclipse中运行调试 ...

  6. 学习笔记:APP切图那点事儿–详细介绍android和ios平台

    学习笔记:APP切图那点事儿–详细介绍android和ios平台 转载自:http://www.woofeng.cn/articles/168.html   版权归原作者所有 作者:亚茹有李 原文地址 ...

  7. 【Unity Shaders】学习笔记——SurfaceShader(七)法线贴图

    [Unity Shaders]学习笔记——SurfaceShader(七)法线贴图 转载请注明出处:http://www.cnblogs.com/-867259206/p/5627565.html 写 ...

  8. Windows phone 8 学习笔记(5) 图块与通知(转)

    基于metro风格的Windows phone 8 应用提到了图块的概念,它就是指启动菜单中的快速启动图标.一般一个应用必须有一个默认图块,还可以有若干个次要图块.另外,通知与图块的关系比较密切,我们 ...

  9. Windows phone 8 学习笔记(5) 图块与通知

    原文:Windows phone 8 学习笔记(5) 图块与通知 基于metro风格的Windows phone 8 应用提到了图块的概念,它就是指启动菜单中的快速启动图标.一般一个应用必须有一个默认 ...

随机推荐

  1. IDEA SVN 使用

    转: IDEA SVN 使用 一.上传项目到 SVN VCS -> Import into Version Control -> Share Project(Subversion) 点击 ...

  2. NodeJs 入门到放弃 — 网络服务器(三)

    码文不易啊,转载请带上本文链接呀,感谢感谢 https://www.cnblogs.com/echoyya/p/14484454.html 目录 码文不易啊,转载请带上本文链接呀,感谢感谢 https ...

  3. Pytorch编程记录

    搭建网络的方式: 1.用sequential方式搭建,只能适用于线性网络 2.用forward和init方式搭建

  4. 安卓Media相关类测试demo

    最近在研究安卓系统给app开发者提供的标准Media相关的工具类,本人做了一些demo来测试这些工具的使用方法. 本demo包含若干apk源码,需要说明以下几点: 1. 构建方式 Makefile使用 ...

  5. Android之Parcelable解析

    http://www.cnblogs.com/abinxm/archive/2011/11/16/2250949.html http://www.cnblogs.com/renqingping/arc ...

  6. Django分页器组建

    class Pagination(object): def __init__(self,current_page,all_count,per_page_num=2,pager_count=11): & ...

  7. 【python+selenium的web自动化】- 针对上传操作的实现方案

    如果想从头学起selenium,可以去看看这个系列的文章哦! https://www.cnblogs.com/miki-peng/category/1942527.html 关于上传操作 ​ 上传有两 ...

  8. 从设计模式角度看OkHttp源码

    前言 说到源码,很多朋友都觉得复杂,难理解. 但是,如果是一个结构清晰且完全解耦的优质源码库呢? OkHttp就是这样一个存在,对于这个原生网络框架,想必大家也看过很多很多相关的源码解析了. 它的源码 ...

  9. The 2018 ACM-ICPC CCPC NING XIA G-Factories

    题意:在一棵数的叶子上建k个工厂保证,求两两距离之和的最小值. 思路:如果一个一个叶子节点去考虑去与否太麻烦了,直接考虑该节点的子树上选取几个作为工厂,利用树形DP,dp[u][i]表示的是u节点为根 ...

  10. 攻防世界 reverse Windows_Reverse2

    Windows_Reverse2   2019_DDCTF 查壳: 寻找oep-->dump-->iat修复   便可成功脱壳 int __cdecl main(int argc, con ...