首页
友链
壁纸
直播
留言
归档
关于
推荐
百度一下
腾讯视频
Search
1
linux免费WEB管理面板:AMH
16,484 阅读
2
为主题添加前台删除文章及评论功能
5,071 阅读
3
欢迎使用Typecho
3,882 阅读
4
创建WordPress多站点网络
2,582 阅读
5
代码高亮 - SyntaxHighlighter 0.0.5
1,872 阅读
网络杂记
Wordpress
Typecho
VPS教程
主题模板
登录
Search
标签搜索
Typecho
WordPress
主题
Linux
VPS
LNMP
MySQL
管理面板
nginx
面板
升级
Apache
php函数
缓存
gravatar
404错误
评论
删除
命令
kloxo
CludeChn
累计撰写
119
篇文章
累计收到
13
条评论
首页
栏目
网络杂记
Wordpress
Typecho
VPS教程
主题模板
页面
友链
壁纸
直播
留言
归档
关于
推荐
百度一下
腾讯视频
搜索到
2
篇与
的结果
2015-04-19
wordpress使用timthumb和七牛云存储函数实现缩略图功能
网站打开速度很大程度上是与网站使用的图片有着一个很大的因素。每篇文章截取的第一张图片的大小都不一样。有时候图片大一点加载就很慢。下面两种方法实现wordpress网站缩略图功能,提高网站加载速度。1、使用七牛云存储函数实现缩略图功能七牛有很强大的缩略图功能,虽然WordPress也有缩略图功能,但是相比之下,七牛强太多了,并且生成的缩略图都是尺寸适应的,并且都是在七牛云存储上面。安装七牛云存储插件后可以使用wpjam_post_thumbnail函数,直接生成缩略图。代码: <?php if(wpjam_has_post_thumbnail()){?> <div class="entry-thumb"> <a href="<?php the_permalink() ?>" title="<?php the_title_attribute(); ?>"><?php wpjam_post_thumbnail(array(150,150),$crop=1);?></a> </div> <?php } ?> 这个函数有两个参数: $size:设置缩略图的大小,它是一个数组,比如上面例子中就是设置缩略图大小为:宽是150px,高也是150px。$crop:设置是否裁剪缩略图,1为裁剪,如果为0,则只是按照最大边进行缩放,不进行裁剪。 另外这个函数相比WordPress默认的the_post_thumbnail函数相比还有一个强大的地方是,如果没有设置缩略图,它将自动获取第一张图片作为缩略图。2、使用timthumb.php实现缩略图功能号称是wordpress网站的缩略图神器。timthumb.php是一个专门为 WordPress 而开发的缩略图应用的项目。有点类似于插件,但是又和WordPress插件不同,因为它不是被上传于plugins文件夹下,而是需要上传到你的主题文件夹中。timthumb使用技巧须知1、服务器要开启GD库。2、在和timthumb.php同一个目录下新建一个cache文件夹用来存储生成的小图片,设置cache文件夹为755或777权限。3、请使用绝对地址来表示原有图片,改程序不支持外链图片。4、最好将规则写入.htaccess文件中。可以加快图片速度。如下: RewriteEngine on RewriteRule .* – [E=HTTP_IF_MODIFIED_SINCE:%{HTTP:If-Modified-Since}] RewriteRule .* – [E=HTTP_IF_NONE_MATCH:%{HTTP:If-None-Match}] 5、将图片的动态地址改为静态地址也会加快服务器的响应速度。6、图片的最后一个参数不是质量级别而是压缩级别。我们可以单独修改这个参数达到最大压缩比。找到timthumb.php文件第174行左右 $quality = floor($quality * 0.09); 在下面添加:$quality = 9;7、还有许多的TimThumb 参数可以让你设置,可以自己去看看。使用的时候,一般图片的地址是这样的: <img src="http://timthumb所在目录/timthumb.php?src=图片地址&h=图片高度&w=图片宽度&zc=1" /> 例如:http://cyh.pw/wp-content/themes/cyh_pw/timthumb.php?src=http://images.cyh.pw/wp-content/uploads/2015/04/typecho.png&h=146&w=220&q=95&zc=1&ct=1 其中,h为缩略图的高度,w为缩略图宽度,q表示质量,zc有两个属性值,1表示裁剪,0表示按设置的高宽压缩,不裁剪。代码参考: //添加特色缩略图支持 if ( function_exists('add_theme_support') )add_theme_support('post-thumbnails'); //输出缩略图地址 From wpdaxue.com function post_thumbnail_src(){ global $post; if( $values = get_post_custom_values("thumb") ) { //输出自定义域图片地址 $values = get_post_custom_values("thumb"); $post_thumbnail_src = $values [0]; } elseif( has_post_thumbnail() ){ //如果有特色缩略图,则输出缩略图地址 $thumbnail_src = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID),'full'); $post_thumbnail_src = $thumbnail_src [0]; } else { $post_thumbnail_src = ''; ob_start(); ob_end_clean(); $output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches); $post_thumbnail_src = $matches [1] [0]; //获取该图片 src if(empty($post_thumbnail_src)){ //如果日志中没有图片,则显示随机图片 $random = mt_rand(1, 10); echo get_bloginfo('template_url'); echo '/images/pic/'.$random.'.jpg'; //如果日志中没有图片,则显示默认图片 //echo '/images/default.jpg'; } }; echo $post_thumbnail_src; } 上面的代码获取图片的顺序是:自定义域 thumb 的图片 > wordpress特色图片 > 文章第一张图片 > 随机图片/默认图片然后在调用缩略图的地方使用类似的代码: <img src="http://timthumb所在目录/timthumb.php?src=<?php echo post_thumbnail_src(); ?>&h=150&w=2000&zc=1" alt="<?php the_title(); ?>"/> 就可以显示缩略图。你可以修改上面的参数,实现不同位置显示不同大小的缩略图。
2015年04月19日
279 阅读
0 评论
0 点赞
2013-03-29
Typecho获取文章第一张图片地址(可做缩略图)
实现原理:大致是这样的,文章的ID作为参数传给函数,函数通过正则式匹配获取这个id的文章里面出现的图片标签的src地址,从而获取第一张图片,然后输出即可。实现代码:1. 编写 functions.php 中的代码function img_postthumb($cid) { $db = Typecho_Db::get(); $rs = $db->fetchRow($db->select('table.contents.text') ->from('table.contents') ->where('table.contents.cid=?', $cid) ->order('table.contents.cid', Typecho_Db::SORT_ASC) ->limit(1)); preg_match_all("/\<img.*?src\=\"(.*?)\"[^>]*>/i", $rs['text'], $thumbUrl); //通过正则式获取图片地址 $img_src = $thumbUrl[1][0]; //将赋值给img_src $img_counter = count($thumbUrl[0]); //一个src地址的计数器 switch ($img_counter > 0) { case $allPics = 1: echo $img_src; //当找到一个src地址的时候,输出缩略图 break; default: echo ""; //没找到(默认情况下),不输出任何内容 }; }2. 调用代码<img src="<?php echo img_postthumb($this->cid); ?>"> <!--如果函数是输出的图片地址的话,则去掉上面注释实现插入图片-->来源:http://d.lcz.me/13.html
2013年03月29日
690 阅读
0 评论
0 点赞