找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
积分等级发帖收益的说明江阴论坛帮助汇总江阴论坛管理规则(必看)江阴论坛版主招聘中江阴论坛已运行
查看: 1289|回复: 0

[WordPress] 巧用 WordPress 缩略图

[复制链接]
发表于 2010-1-12 09:43:45 | 显示全部楼层 |阅读模式
WordPress 不仅是博客, 很多时候 WordPress 还被用作为 CMS (内容管理系统).博主们喜欢为每个文章加上统一大小的缩略图, 尤其是信息类平台. 其中比较常用的处理办法是用 custom field 向文章插入图片,通过上传大小一致的小图或者使用 phpThumb 等工具生成缩略图.
2.7 开始, WordPress 大幅提升多媒体功能, 越来越多人使用 WP 的内置图片仓库. 对这些用户来说,制作缩略图变得并不那么困难, 在上传图片的时候就会默认生成 150x150 规格的小图 (如果图片高度/宽度不足 150px,使用原高度/宽度). 那我们可以充分利用这个功能, 在文章列表上加上这个图片作为缩略图. 这样处理各有利弊, 好处是简单, 智能(不用每次输入缩略图), 坏处是消耗服务器流量.

Okay, 现在要做的就是提取上传生成的小图片, 并放置在文章的适当位置. 我创建了一个文件 thumb.php, 图片获取和调用一起处理, 文件内容如下.
  1. <?php
  2.         $args = array(
  3.                 'post_parent' => $post->ID,
  4.                 'post_type' => 'attachment',
  5.                 'post_mime_type' => 'image'
  6.         );

  7.         $images = &get_children( 'post_type=attachment&post_mime_type=image&post_parent=' . $post->ID );
  8.         $imageUrl = '';

  9.         if ($images) {
  10.                 $image = array_pop($images);
  11.                 $imageSrc = wp_get_attachment_image_src($image->ID);
  12.                 $imageUrl = $imageSrc[0];
  13.         }else{
  14.                 $imageUrl = get_bloginfo('template_url') . '/img/default.gif';
  15.         }
  16. ?>
  17. <a href="<?php the_permalink() ?>"><img class="left" src="<?php echo $imageUrl; ?>" alt="<?php the_title(); ?>" width="150" height="150" /></a>
复制代码
这段代码会去找第一个上传的图片 的缩略图 (如果第一个图片被删除, 则找第二个的, 如此类推...),如果找不到任何上传图片则使用默认图片. 代码中用到 get_children 和 wp_get_attachment_image_src两个方法, 可以参考下面两个文章.
WordPress Codex - get children
WordPress Codex - wp get attachment image src
然后在文章列表 index.php, 存档页面 archive.php 和搜索页面 search.php 中调用, 调用代码如下.
  1. <?php include('thumb.php'); the_content('Read More...'); ?>
复制代码
原文:http://www.neoease.com/wordpress-thumb-trick/
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|江阴人家

GMT+8, 2024-4-24 19:54 , Processed in 0.017915 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表