为WordPress主题添加图片暗箱特效

2011年8月17日00:42:17 WordPress进阶 主题DIY 19 1

所谓的暗箱,就是点击小图片弹出窗口并显示大图片,类似的Wordpress插件众多,比如:wp-slimbox2、jQuery Lightbox、jQuery Colorbox、Gameplorer`s WPColorBox、shadowbox-js、Auto Highslide等等,功能效果都相似。其实不用插件简单几步就可将这一特效集成到WordPress主题中,而且加载的文件也比插件小的多。喜欢折腾的童鞋可以参照下面的方法操作:

首先,下载所需文件,解压后将pirobox文件夹内的所有文件放到你所使用主题的目录中。

文件下载: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;
}

完成暗箱特效集成,简单吧。之后,点击日志中的图片,就会华丽地弹出窗口展示该日志中所有插入的图片,可手动播放也可以自动播放。下面的演示是通过shadowbox-js插件实现的,真正集成后的效果要比这个炫。或者到我的站:http://zmingcx.com/gallery/enjoy 查看真实效果。

为Wordpress主题添加图片暗箱特效 为Wordpress主题添加图片暗箱特效 为Wordpress主题添加图片暗箱特效

无图像只有图片链接一样会显示特效点(击链接查看效果)

另外,集成该插件后,如果日志中有多张图片,只需正常插入一张就可以了,其它只需插入图片链接,可以加快页面打开速度。

举一反三,你也可以尝试将http://www.pirolab.it/pirobox/中的特效集成到主题中,这个特效JS弹出窗口,可适应屏幕的大小,并可移动,关键就是为图片链接添加不同的标签属性。

评论已关闭!

目前评论:19   其中:访客  18   博主  0   引用   1

    • 文海如 文海如 3

      哈,很实用的技巧,明天有时间再折腾上去……

      • wordpress主题 wordpress主题 1

        谢谢分享这么好的技术文章

        • francis francis 4

          太高端了⋯⋯

            • 知更鸟 知更鸟 5

              @francis 只有三步就可完成的特效,绝对的低端,呵呵

                • 灭焰口才 灭焰口才 0

                  @知更鸟 鸟哥,你的博客为什么打不开了?

                  • 资源新天地 资源新天地 0

                    @知更鸟 鸟哥,你的HotNewsPro不就是集成了暗箱效果吗?我觉得HotNewsPro的那个效果比较美观~~~

                • haiyaoma haiyaoma 0

                  加载了东西,多速度有影响吧

                  • 忆草 忆草 1

                    太高端了⋯⋯

                    • powerson powerson 1

                      奇怪,我的网站怎么没有特效?

                      • kevin kevin 0

                        你好,如果我想把主题自带的暗箱功能取消,怎么实现?有没有相关文章有详细说明,请推荐一下。

                        • tianqing tianqing 1

                          您好!非常感谢你的分享,我按你步骤做了,也有了暗箱效果。
                          但是很奇怪的是不知为何,每显示一张图片就往下滑,而且下滑的厉害,每次看下一张图片都要拉到很下去看。http://tianqing.info/2012/04/01/test/ 这个是测试链接,麻烦您帮忙看一下可以吗?也不知道是不是就只有我是这样~谢谢了~O(∩_∩)O

                            • tianqing tianqing 1

                              @tianqing 嗯,不好意思,再次打扰,还有个问题想问下您,我博客好像用外链的图片就没有这样的特效?

                            • vini vini 0

                              你好哦。我刚弄了个wordpress 博客,好多东西我都弄不好。想要你的帮助可以吗。。。谢谢哈。

                              我的邮件:lichking_lin86@qq.com

                                • 酋 长 酋 长 9

                                  @vini 有问题,可以到WordPress问答社区:http://faq.wopus.org 提问交流。

                                • 转角手绘 转角手绘 1

                                  这个简洁、方便多了。

                                  • 大兵 大兵 1

                                    这个效果太老套了,看下我的图片暗箱效果http://www.ddbing.com/jquery-achieve-picture-text-obscura-effect/

                                    • 大兵 大兵 1

                                      理论上是可以的

                                    • 来自外部的引用: 1

                                      • 《为Wordpress主题添加图片暗箱特效》 – 小猴子、