所谓的暗箱,就是点击小图片弹出窗口并显示大图片,类似的Wordpress插件众多,比如:wp-slimbox2、jQuery Lightbox、jQuery Colorbox、、Gameplorer`s WPColorBox、shadowbox-js,加上我之前用的Auto Highslide等等,功能效果都相似。其实不用插件简单几步就可将这一特效集成到Wordpress主题中,而且加载的文件也比插件小的多。喜欢折腾的童鞋可以参照下面的方法操作:
首先,下载所需文件,解压后将pirobox文件夹内的所有文件放到你所使用主题的目录中。
其次,打开主题header模版文件,在</head>前面,分别添加:
所需样式:
- <link rel="stylesheet" href="<?php bloginfo('template_url'); ?>/img/style.css" />
必须的jquery.min.js及特效pirobox.min.js文件:
- <script type="text/javascript" src="<?php bloginfo('stylesheet_directory'); ?>/js/jquery.min.js" ></script>
- <script type="text/javascript" src="<?php bloginfo('template_directory'); ?>/js/pirobox.min.js"></script>
- <script type="text/javascript">
- $(document).ready(function() {
- $().piroBox({
- my_speed: 400, //animation speed
- bg_alpha: 0.3, //background opacity
- slideShow : true, // true == slideshow on, false == slideshow off
- slideSpeed : 4, //slideshow duration in seconds(3 to 6 Recommended)
- close_all : '.piro_close,.piro_overlay'// add class .piro_overlay(with comma)if you want overlay click close piroBox
- });
- });
- </script>
如果你所使用的主题已加载了jquery.js,可以免去jquery.min.js文件加载代码。
最后,集成该特效除了加载必须的JS和样式文件,关键是为日志中的图片链接自动添加JS特效所需的固定标签属性(class="pirobox_gall")。将下面代码扔到主题functions.php中:
- //自动添加标签属性
- add_filter('the_content', 'pirobox_gall_replace');
- function pirobox_gall_replace ($content)
- { global $post;
- $pattern = "/<a(.*?)href=('|\")([^>]*).(bmp|gif|jpeg|jpg|png)('|\")(.*?)>(.*?)<\/a>/i";
- $replacement = '<a$1href=$2$3.$4$5 class="pirobox_gall"$6>$7</a>';
- $content = preg_replace($pattern, $replacement, $content);
- return $content;
- }
完成暗箱特效集成,简单吧。之后,点击日志中的图片,就会华丽地弹出窗口展示该日志中所有插入的图片,可手动播放也可以自动播放。另外下面是无图演示:
另外,集成该插件后,如果日志中有多张图片,只需正常插入一张就可以了,其它只需插入图片链接,可以加快页面打开速度。
举一反三,你也可以尝试将http://www.pirolab.it/pirobox/中的特效集成到主题中,这个JS特效弹出窗口,可适应屏幕的大小,并可移动,关键就是为图片链接添加不同的标签属性。
2015年2月26日 下午4:10 3F
技术帝
2013年6月30日 上午10:19 2F
不错,讲的很好,效果杠杠的!!
2013年6月29日 下午11:41 1F
wp很强大,我得学习学习,以便优化一下
2013年6月30日 上午10:20 B1
@ 微历史 应该说Jquery强大了,放在啥程序上都可以有这效果的麻。