作者:matrix
发布时间:2014-01-11
分类:Wordpress 零零星星
快速填写评论框信息
拖动上面到书签栏,点击comment测试,
javascript代码:
javascript:
var n='Pang';
e='adminI@Iyban.tk';
u='http://www.hhtjim.com';
wp_ar = a('author');
wp_em = a('email') || a('mail');
wp_url = a('url');
ds_ar = a('ds-dialog-name');
ds_em = a('ds-dialog-email');
ds_url = a('ds-dialog-url');
uyan_ar = a('uyan_uname') || a('uyan_l_uname');
uyan_em = a('uyan_email') || a('uyan_l_email');
uyan_url = a('uyan_l_ulink');
dlu_ar = a('idenglu_name');
dlu_em = a('idenglu_email');
dlu_url = a('idenglu_homepage');
em_ar = b('comname');
em_em = b('commail');
em_url = b('comurl');
if(wp_ar){wp_ar.value = n;
wp_em.value = e;
wp_url.value = u;
}if(ds_ar){ds_ar.value = n;
ds_em.value = e;
ds_url.value = u;
}if(uyan_ar){uyan_ar.value = n;
uyan_em.value = e;
uyan_url.value = u;
}if(dlu_ar){dlu_ar.value = n;
dlu_em.value = e;
dlu_url.value = u;
}if(em_ar){em_ar.value = n;
em_em .value = e;
em_url.value = u;
}
function a(i) {
var i = document.getElementById(i);
return i;
}function b(i) {
var i = document.all(i);
return i;
}
void(0);
说明:
第2、3和4行分别自己的昵称,邮箱,网址。
由于代码太长,所以方便到emblog、WordPress、typecho、多说、灯鹭、有言都可以一键填写信息。
不知道代码源自哪里了,到处都飞。只是我这更加强了些。
由于ID或name的不同或许不会达到满意的效果,仅供测试。 阅读剩余部分 »
作者:matrix
发布时间:2013-10-09
分类:Wordpress 兼容并蓄 零零星星
jquery-backstretch可以实现之前>>刷新页面后让WordPress背景随机切换 不能到达的动态切换背景功能。 用jquery-backstretch就算你不按F5刷新页面背景也可以自动切换,带有淡入淡出的缓慢加载那种效果,很好看。
github地址:https://github.com/srobbin/jquery-backstretch
官网:http://srobbin.com/jquery-plugins/backstretch/
目前最新版本 Backstretch - v2.0.4 - 2013-06-19 阅读剩余部分 »
作者:matrix
发布时间:2013-09-26
分类:Wordpress 兼容并蓄
鼠标停留在有title属性上的时候或有提示,但是默认的样式中有觉得不可观的地方。利用js即可实现修改。
NGRO的效果演示:
css 阅读剩余部分 »
作者:matrix
发布时间:2013-09-25
分类:Wordpress 兼容并蓄
更换主题-七彩之家BLUE2.0以及后续的修改 有提到整合auto-highslide灯箱的功能,这次更加完善。
DEMO:http://pan.baidu.com/share/link?shareid=4020387527&uk=3238236832
步骤:
1.将下面代码加到主题的functions.php中,方法你懂得。
<?php
//////////////START wp highslide picture code /////////////
add_filter('the_content', 'hlHighSlide_replace', '99');
add_action('wp_head', 'highslide_head');
function highslide_head()
{
$hlHighslide_wp_url=get_bloginfo('template_url').'/';
$defaults_javascript =
"<link href='{$hlHighslide_wp_url}highslide/highslide.css' rel='stylesheet' type='text/css' />";
echo $defaults_javascript;
}
add_action('wp_footer', 'highslide_footer');
function highslide_footer()
{
$hlHighslide_wp_url=get_bloginfo('template_url').'/';
$defaults_javascript =
"\n\t<script type='text/javascript' src='{$hlHighslide_wp_url}highslide/highslide.js'></script>
<script type='text/javascript'>
hs.graphicsDir = '{$hlHighslide_wp_url}highslide/graphics/';
hs.showCredits = false;
hs.creditsPosition = 'bottom left';
hs.outlineType = 'custom';
hs.dimmingOpacity = 0.3;
hs.fadeInOut = true;
hs.align = 'center';
hs.captionEval = 'this.thumb.alt';
// Add the slideshow controller
hs.addSlideshow({
slideshowGroup: 'group1',
interval: 5000,
repeat: true,
useControls: true,
fixedControls: 'fit',
overlayOptions: {
opacity: 0.75,
position: 'bottom center',
offsetX: 0,
offsetY: -10,
hideOnMouseOut: true
}
});
// Chinese simplified language strings
hs.lang = {
cssDirection: 'ltr',
loadingText: '载入中...',
loadingTitle: '正在载入,点击取消',
focusTitle: '置于最前',
fullExpandTitle: '原始尺寸',
previousText: '上一张',
nextText: '下一张',
moveText: '移动',
closeText: '关闭',
closeTitle: '关闭 (退出键)',
resizeTitle: '调整尺寸',
playText: '播放',
playTitle: '播放幻灯片 (空格键)',
pauseText: '暂停',
pauseTitle: '暂停幻灯片 (空格键)',
previousTitle: '上一张 (左方向键)',
nextTitle: '下一张 (右方向键)',
moveTitle: '移动',
fullExpandText: '完整尺寸',
number: 'Image %1 of %2',
restoreTitle: '单击关闭图片,单击不放可拖动。使用方向键切换图片。'
};
// gallery config object
var config1 = {
slideshowGroup: 'group1',
numberPosition: 'caption',
transitions: ['expand', 'crossfade']
};
</script>";
echo $defaults_javascript;
}
//add onclick event
function add_onclick_replace ($content)
{
$pattern = "/<a(.*?)href=('|\")([^>]*).(bmp|gif|jpeg|jpg|png)('|\")(.*?)>(.*?)<\/a>/i";
$replacement = '<a$1href=$2$3.$4$5 class="highslide" onclick="return hs.expand(this, config1 )" $6>$7 </a>';
$content = preg_replace($pattern, $replacement, $content);
return $content;
}
function hlHighSlide_replace($content)
{
global $post;
$defaults = array();
$defaults['quicktags'] = 'y';
$defaults['alt'] = 'Enter ALT Tag Description';
$defaults['title'] = 'Enter Caption Text';
$defaults['thumbid'] = 'thumb1';
$defaults['show_caption'] = 'y';
$defaults['show_close'] = 'y';
$content=add_onclick_replace($content);
$HSVars = array("SRC", "ALT", "TITLE", "WIDTH", "HEIGHT","THUMBID");
$HSVals = array($defaults['href'], $defaults['src'], $defaults['alt'], $defaults['title'], $defaults['thumbid']);
preg_match_all ('!<img([^>]*)[ ]*[/]{1}>!i', $content, $matches);
$HSStrings = $matches[0];
$HSAttributes = $matches[1];
for ($i = 0; $i < count($HSAttributes); $i++)
{ preg_match_all('!(src|alt|title|width|height|class)="([^"]*)"!i',$HSAttributes[$i],$matches);
$HSSetVars = $HSSetVals = array();
for ($j = 0; $j < count($matches[1]); $j++)
{ $HSSetVars[$j] = strtoupper($matches[1][$j]);
$HSSetVals[$j] = $matches[2][$j];}
}
$HSClose = <<<EOT
<a href="#" onclick="hs.close(this);return false;" class="highslide-close" title="关闭">Close</a>
EOT;
$HSCaption = <<<EOT
<div class='highslide-caption' id='caption-for-%THUMBID%'>
{$HSPrvNextLinks}
{$HSClose}
<div style="clear:both">%TITLE%</div>
</div>
EOT;
$HSCode = <<<EOT
<img id="%THUMBID%" src="%SRC%" alt="%ALT%" title="%TITLE%" width="%WIDTH%" height="%HEIGHT%" />{$HSCaption}
EOT;
$content = str_replace($HSStrings[$i], $HSCode, $content);
return $content;
}
/////////////////
?>
说明:87 行的onclick="return hs.expand(this, config1 )"
开启了相册幻灯片功能,如果需要关闭可改为onclick="return hs.expand(this)"
2.下载素材文件,解压到主题目录
下载:
http://www.400gb.com/file/30266321
http://pan.baidu.com/share/link?shareid=3945557249&uk=3238236832
3.最后完工。
效果:
使用的Highslide JS 在线编辑,状态保存:
http://highslide.com/editor/?config=%7B%22lang%22%3A+%22zh-s%22,+%22preset%22%3A+%22html-white%22,+%22applyDimming%22%3A+true,+%22dimmingOpacity%22%3A+%220.3%22,+%22hideThumbOnExpand%22%3A+false,+%22alignment%22%3A+%22center%22,+%22captionSource%22%3A+%22thumb.alt%22,+%22captionStyles%22%3A+%22%5Ctpadding%3A+2px;%22,+%22headingSource%22%3A+%22thumb.alt%22,+%22creditsPosition%22%3A+%22bottom+left%22,+%22enableGallery%22%3A+true,+%22numberPosition%22%3A+%22caption%22,+%22enableThumbstrip%22%3A+false,+%22thumbstripMode%22%3A+%22float%22,+%22thumbstripPosition%22%3A+%22below%22,+%22thumbstripRelativeTo%22%3A+%22image%22,+%22thumbstripSize%22%3A+%22280%22,+%22slideshowRepeat%22%3A+true,+%22htmlControlsLayout%22%3A+%22icon-text%22,+%22useTitleBar%22%3A+false,+%22htmlHeadingSource%22%3A+%22a.title%22%7D
参考:http://themeidea.com/highslide.html
Highslide js 在线编辑 http://justcoding.iteye.com/blog/595145
http://highslide.com/editor/
作者:matrix
发布时间:2013-09-20
分类:Wordpress 兼容并蓄
onamae.com的25号免费域名没抢到,倒是看到onamae上的一个图片闪光特效好奇,这就扒了。
看头部的meta写的jquery-opacity-rollover.js文件,不知道这是个啥子插件上的东东。
作者:http://h2ham.seesaa.net
实际效果,文字说明:
假设图片被指定加载此js特效。 阅读剩余部分 »
作者:matrix
发布时间:2013-09-19
分类:兼容并蓄 零零星星
自从本站准备暂时停止域名解析 的2013年08月13日开始到昨天9-18 10:38. 😀 被安通过了。工信部短信通知的,后来也有email。 哈哈
硬是感谢各位相关人员~
这一个月的时间真恼火。期间找了俩关于不关站的办法:
10-15添加第三种更靠谱的方法
1.靠谱的就是使用DNSPOD的功能:修改线路类型
到域名列表里找到线路类型选择“搜索引擎”,这样蜘蛛照样可以正常访问,比起停止域名解析来好得多。
本站收录本来就那一点点,感觉影响不大。
2.不靠谱的就是识别来访者ip地址实现自动屏蔽省级IP段。
这样的话还是有些作用,但不能保证人家看不到你的网站。
so, 不咋靠谱。
在index.php中适当位置添加相关代码:
<?
function convertip($ip)
{
//IP数据文件路径
$dat_path = 'QQWry.dat';
//检查IP地址
if (!ereg("^([0-9]{1,3}.){3}[0-9]{1,3}$", $ip)) {
return 'IP Address Error';
}
//打开IP数据文件
if (!$fd = @fopen($dat_path, 'rb')) {
return 'IP date file not exists or access denied';
}
//分解IP进行运算,得出整形数
$ip = explode('.', $ip);
$ipNum = $ip[0] * 16777216 + $ip[1] * 65536 + $ip[2] * 256 + $ip[3];
//获取IP数据索引开始和结束位置
$DataBegin = fread($fd, 4);
$DataEnd = fread($fd, 4);
$ipbegin = implode('', unpack('L', $DataBegin));
if ($ipbegin < 0) $ipbegin += pow(2, 32);
$ipend = implode('', unpack('L', $DataEnd));
if ($ipend < 0) $ipend += pow(2, 32);
$ipAllNum = ($ipend - $ipbegin) / 7 + 1;
$BeginNum = 0;
$EndNum = $ipAllNum;
//使用二分查找法从索引记录中搜索匹配的IP记录
while ($ip1num > $ipNum || $ip2num < $ipNum) {
$Middle = intval(($EndNum + $BeginNum) / 2);
//偏移指针到索引位置读取4个字节
fseek($fd, $ipbegin + 7 * $Middle);
$ipData1 = fread($fd, 4);
if (strlen($ipData1) < 4) {
fclose($fd);
return 'System Error';
}
//提取出来的数据转换成长整形,如果数据是负数则加上2的32次幂
$ip1num = implode('', unpack('L', $ipData1));
if ($ip1num < 0) $ip1num += pow(2, 32);
//提取的长整型数大于我们IP地址则修改结束位置进行下一次循环
if ($ip1num > $ipNum) {
$EndNum = $Middle;
continue;
}
//取完上一个索引后取下一个索引
$DataSeek = fread($fd, 3);
if (strlen($DataSeek) < 3) {
fclose($fd);
return 'System Error';
}
$DataSeek = implode('', unpack('L', $DataSeek . chr(0)));
fseek($fd, $DataSeek);
$ipData2 = fread($fd, 4);
if (strlen($ipData2) < 4) {
fclose($fd);
return 'System Error';
}
$ip2num = implode('', unpack('L', $ipData2));
if ($ip2num < 0) $ip2num += pow(2, 32);
//没找到提示未知
if ($ip2num < $ipNum) {
if ($Middle == $BeginNum) {
fclose($fd);
return 'Unknown';
}
$BeginNum = $Middle;
}
}
//下面的代码读晕了,没读明白,有兴趣的慢慢读
$ipFlag = fread($fd, 1);
if ($ipFlag == chr(1)) {
$ipSeek = fread($fd, 3);
if (strlen($ipSeek) < 3) {
fclose($fd);
return 'System Error';
}
$ipSeek = implode('', unpack('L', $ipSeek . chr(0)));
fseek($fd, $ipSeek);
$ipFlag = fread($fd, 1);
}
if ($ipFlag == chr(2)) {
$AddrSeek = fread($fd, 3);
if (strlen($AddrSeek) < 3) {
fclose($fd);
return 'System Error';
}
$ipFlag = fread($fd, 1);
if ($ipFlag == chr(2)) {
$AddrSeek2 = fread($fd, 3);
if (strlen($AddrSeek2) < 3) {
fclose($fd);
return 'System Error';
}
$AddrSeek2 = implode('', unpack('L', $AddrSeek2 . chr(0)));
fseek($fd, $AddrSeek2);
} else {
fseek($fd, -1, SEEK_CUR);
}
while (($char = fread($fd, 1)) != chr(0))
$ipAddr2 .= $char;
$AddrSeek = implode('', unpack('L', $AddrSeek . chr(0)));
fseek($fd, $AddrSeek);
while (($char = fread($fd, 1)) != chr(0))
$ipAddr1 .= $char;
} else {
fseek($fd, -1, SEEK_CUR);
while (($char = fread($fd, 1)) != chr(0))
$ipAddr1 .= $char;
$ipFlag = fread($fd, 1);
if ($ipFlag == chr(2)) {
$AddrSeek2 = fread($fd, 3);
if (strlen($AddrSeek2) < 3) {
fclose($fd);
return 'System Error';
}
$AddrSeek2 = implode('', unpack('L', $AddrSeek2 . chr(0)));
fseek($fd, $AddrSeek2);
} else {
fseek($fd, -1, SEEK_CUR);
}
while (($char = fread($fd, 1)) != chr(0)) {
$ipAddr2 .= $char;
}
}
fclose($fd);
//最后做相应的替换操作后返回结果
if (preg_match('/http/i', $ipAddr2)) {
$ipAddr2 = '';
}
$ipaddr = "$ipAddr1 $ipAddr2";
$ipaddr = preg_replace('/CZ88.Net/is', '', $ipaddr);
$ipaddr = preg_replace('/^s*/is', '', $ipaddr);
$ipaddr = preg_replace('/s*$/is', '', $ipaddr);
if (preg_match('/http/i', $ipaddr) || $ipaddr == '') {
$ipaddr = 'Unknown';
}
return $ipaddr;
}
function findstr($str, $substr)
{
$m = strlen($str);
$n = strlen($substr);
if ($m < $n) return false;
for ($i = 0; $i <= ($m - $n + 1); $i++) {
$sub = substr($str, $i, $n);
if (strcmp($sub, $substr) == 0) return true;
}
return false;
}
?>
<?
$user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"];
$user_IP = ($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"];
$ClientCity = convertip($user_IP); //获得所在城市字符串
$ClientCity = iconv("gb2312", "utf-8", $ClientCity);
$flag = false;
$tmp = $_SERVER['HTTP_USER_AGENT'];
if (strpos($tmp, 'Googlebot') !== false) {
$flag = true;
} else if (strpos($tmp, 'Baiduspider') > 0) {
$flag = true;
} else if (strpos($tmp, 'Yahoo! Slurp') !== false) {
$flag = true;
} else if (strpos($tmp, 'msnbot') !== false) {
$flag = true;
} else if (strpos($tmp, 'Sosospider') !== false) {
$flag = true;
} else if (strpos($tmp, 'YodaoBot') !== false || strpos($tmp, 'OutfoxBot') !== false) {
$flag = true;
} else if (strpos($tmp, 'Sogou web spider') !== false || strpos($tmp, 'Sogou Orion spider') !== false) {
$flag = true;
} else if (strpos($tmp, 'fast-webcrawler') !== false) {
$flag = true;
} else if (strpos($tmp, 'Gaisbot') !== false) {
$flag = true;
} else if (strpos($tmp, 'ia_archiver') !== false) {
$flag = true;
} else if (strpos($tmp, 'altavista') !== false) {
$flag = true;
} else if (strpos($tmp, 'lycos_spider') !== false) {
$flag = true;
} else if (strpos($tmp, 'Inktomi slurp') !== false) {
$flag = true;
}
//echo $ClientCity;
$b = '安庆'; //这里填写要屏蔽的地区
if (findstr($ClientCity, $b)) {
if ($flag) { //这里是让蜘蛛过去
echo "<script>location.href='http://www.tlrc.com/';</script>";
} else {
echo "<script>location.href='http://www.tongling.cn/';</script>";
}
} else {
//正常需要访问的代码,也可以再增加屏蔽的城市
}
?>
参考:http://www.discuz.net/forum.php?mod=viewthread&tid=2712504
3.来自某Q群的代码。亲测成功!最简洁,也就几行js代码就可实现。
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<script type="text/javascript" src="http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js"></script>
<script type="text/javascript">
var t = remote_ip_info;
if( t.city == '成都' ){
window.location.href='https://www.hhtjim.com';
}
</script>
说明:
第5行填写需要屏蔽的城市
弊端就是只能屏蔽城市的IP段,屏蔽省份的话需要相应修改。
屏蔽四川全省:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<script type="text/javascript" src="http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js"></script>
<script type="text/javascript">
var t = remote_ip_info;
if( t.province == '四川' ){
window.location.href='https://www.hhtjim.com';
}
</script>
说明:
第5行填写需要屏蔽的省份,这里就解决了上面不能屏蔽省份的弊端。
自己完全可以DIY,如果需要屏蔽中国地区
第5行改为if( t.country == '中国' ){
屏蔽来自联通的IP
第5行改为if( t.isp == '联通' ){
作者:matrix
发布时间:2013-09-16
分类:Wordpress 零零星星
用ZeroClipboard跨浏览器实现复制到剪切板,兼容ie、chrome、firefox等等支持flash的浏览器。
ZeroClipboard以前在google代码的项目404,发现个神似ZeroClipboard的zClip 项目:http://www.steamdev.com/zclip/
其余项目:可以参考http://zeroclipboard.org/
网上关于ZeroClipboard的有很多,有些不能用 看着也杂~
下面记录自用ZeroClipboard的代码。点击查看最新版本的简单设置
ZeroClipboard version: "1.0.7"
js和swf下载:
http://www.400gb.com/file/28619600
http://pan.baidu.com/share/link?shareid=3611655227&uk=3238236832
步骤:
1.修改压缩包中zpCOPY.js的第九行:
moviePath: 'zpCOPY.swf', // URL to movie
确保zpCOPY.swf路径的正确,建议使用绝对地址(形如https://www.hhtjim.com/zpCOPY.swf)。
2.在需要调用复制的页面加入js代码:
<script type="text/javascript" src="https://www.hhtjim.com/zpCOPY.js"></script>
<script type="text/javascript">
var clip = null;
function $(id) { return document.getElementById(id); }
function init() {
clip = new ZeroClipboard.Client();
clip.setHandCursor(true);
clip.setText($('text').value);
clip.glue('anniu');
clip.addEventListener( "complete", function(){
alert("复制成功!");
});
clip.addEventListener( "load", function(client) {
client.movie.title="复制本文固定链接";
});
}
</script>
说明:
第1行的js地址可自定义
第8、9行的text、anniu为第3步代码中对应的id值
第10、11行是复制后的弹窗提示。
3.同上,放在那页面,适当位置添加:
<body onLoad="init()"></body>
<textarea style="display:none" id="text" ><?php the_permalink() ?></textarea>
<a id="anniu" href='javascript:void(0);' title="复制本文链接">+复制链接</a>
说明:
第1行的onLoad="init()"为打开页面即加载init函数。缺少此行会导致加载flash失败。
第2行为需要复制的文本内容。这里的复制的内容是<textarea里的<?php the_permalink() ?>返回的WordPress文章网址。
经测试无法复制其他标签的文字,只有<textarea标签里的可用。由于文本框有点占位置,所以做了隐藏style="display:none"。
第3行为点击复制的那个按钮。
4.之后就成功了。
经本地测试chrome 版本 28.0.1500.95 m、ie10、firefox 23.0.1 复制成功!
本地测试于NGRO主题 💡
弹窗提示
参考:http://www.myext.cn/webkf/27383.html
http://keleyi.com/a/bjac/3wjq3xm2.htm
zclip DEMO:http://www.steamdev.com/zclip/
需要调用JQ库和zclip.min.js:
<script type="text/javascript" src="http://libs.baidu.com/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript" src="http://file.icycat.com/view/js/jquery.zclip.min.js"></script>
然后是复制的按钮和文本代码:
<a type="button" id="anniu" class="btn" > 复制 </a>
<a style="display:none" id="wenben"> 复制:https://www.hhtjim.com </a>
<script type="text/javascript">
$(document).ready(function(){$("#anniu").zclip({path:"http://file.icycat.com/view/js/ZeroClipboard.swf",copy:$("#wenben").text(),afterCopy:function(){$(this).css("color","#777");$(this).text("复制成功")}})});
</script>
说明:第1行 复制按钮为 id="anniu"
第2行 复制的文本是 id="wenben"的内容
3-4行 加载配置的swf文件路径,复制按钮、复制的文本ID以及复制成功后变成“复制成功”的样式。
代码参考来自:http://file.icycat.com/
作者:matrix
发布时间:2013-09-03
分类:Wordpress 兼容并蓄
图片时载入的渐显特效JQuery 中有提到lazyload,可以加速WordPress站点的页面载入速度。只是以前的有些偏移这里稍微更新一下。
官网:http://www.appelsiini.net/projects/jeditable
github:https://github.com/tuupola/jquery_jeditable
多图demo:http://www.appelsiini.net/projects/lazyload/enabled_gazillion.html
预加载图片和lazyload v1.8.5下载:
http://www.400gb.com/file/29074139
http://pan.baidu.com/share/link?shareid=2497435386&uk=3238236832
步骤:
1.header中加载JQ库 这里使用1.7.2版本的没问题。若已经加载JQ库不必重复加载。
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js">
2.紧接着加载压缩包里的jquery.lazyload.min.js。依然还是主题的header中。(示例,放入主题目录内的/js/文件夹)
<script src="<?php bloginfo('stylesheet_directory');?>/js/jquery.lazyload.min.js" charset="utf-8"></script>
3.再添加js代码,还是紧接着放置。
<script type="text/javascript" charset="utf-8">
jQuery(document).ready(
function($){
$("img").lazyload({
effect : "fadeIn" //加载图片使用的效果(淡入)
});
});
</script>
说明:第4行的img为需要预加载的地方。这里是所有img标签。
4.还再主题的header.php中添加
<?PHP ob_start();?>
说明:使用ob_start()函数自动在缓冲区处理需要最终加载的图片标签格式
5.在主题footer.php适当位置处添加php代码.可以是</body>之前,也可以是最后一行。
<?php
//图片延缓加载相关处理,替换src为data-original,并添加占位符
$echo = ob_get_contents(); //获取缓冲区内容
ob_clean(); //清楚缓冲区内容,不输出到页面
$placeholder = "grey.gif"; //占位符图片
$preg = "/<img (.*)src(.*) \/>/i"; //匹配图片正则
$replaced = '<img \\1src="'.$placeholder.'" data-original\\2 />';
print preg_replace($preg, $replaced, $echo); //重新写入的缓冲区
ob_end_flush(); //将缓冲区输入到页面,并关闭缓存区
?>
说明:注意第6行中的grey.gif为:预加载的图片名称grey.gif,预加载的图片路径:WordPress程序根目录。当然这里也可以使用绝对路径。
压缩包内还有白色的white.gif和透明的transparent.gif都是预加载图片,可自定义跟换。
参考:http://dl.epinv.com/post/304.html
http://www.neoease.com/lazy-load-jquery-plugin-delay-load-image/
http://www.oschina.net/code/snippet_111193_3306
http://www.173it.cn/view-5577-1.html
- 1
- 2
- 3