在WP 3.2.1中有什么好的类似灯箱的选项吗?

时间:2011-11-18 作者:japanworm

我很难找到一个“插件”,它可以帮助我以一种很好的方式显示一些图像,如Prettypoto、Lightbox等。由于我已经在使用jQuery库,我更喜欢使用jQuery而不是Scriptaculous的插件。

我试图实现Prettypoto的最新版本以及基于jQuery的Lightbox插件(最近没有更新)。两者似乎都存在Wordpress 3.2.1的几个问题

谷歌搜索只是告诉我其他人也有类似的问题,但我还没有找到一个好的答案或解决方案。

我宁愿不使用另一个WP插件,而是自己实现它,但在尝试所有选项之前,只是想看看它们是否能与最新的WP版本很好地配合使用,我认为在这里询问可能是一个更好的主意。

有人在用s.th吗。与我在最新WP版本中成功寻找的相似?

提前非常感谢。

1 个回复
最合适的回答,由SO网友:Jeremy Jared 整理而成

这是我在主题中使用thickbox的代码。它适用于我构建的所有产品。我在其他网站上尝试了几种建议的方法,但没有一种对我有效。试试这个脚本,如果它不起作用,你的主题中可能有一个插件或另一个脚本做错了。

代码如下:

<?php
    function add_themescript(){
     if(!is_admin()){
     wp_enqueue_script(\'thickbox\',null,array(\'jquery\'));
     wp_enqueue_style(\'thickbox.css\', \'/\'.WPINC.\'/js/thickbox/thickbox.css\', null, \'1.0\');
     }
}
 add_action(\'init\',\'add_themescript\');

define("IMAGE_FILETYPE", "(bmp|gif|jpeg|jpg|png)", true);
function wp_thickbox($string) {
$pattern = \'/(<a(.*?)href="([^"]*.)\'.IMAGE_FILETYPE.\'"(.*?)><img)/ie\';
$replacement = \'stripslashes(strstr("\\2\\5","rel=") ? "\\1" : "<a\\2href=\\"\\3\\4\\"\\5 class=\\"thickbox\\"><img")\';
  return preg_replace($pattern, $replacement, $string);
}

function wp_thickbox_rel( $attachment_link ) {
$attachment_link = str_replace( \'a href\' , \'a rel="thickbox-gallery" class="thickbox" href\' , $attachment_link );
  return $attachment_link;
}
add_filter(\'the_content\', \'wp_thickbox\');
add_filter(\'wp_get_attachment_link\' , \'wp_thickbox_rel\');
?>
您需要确保使用设置放置图像:图像链接到-File URL. 您不需要添加rel=“thicbox”,因为代码可以为您添加rel=“thicbox”。如果要设置thickbox窗口的外观,只需删除:

 wp_enqueue_style(\'thickbox.css\', \'/\'.WPINC.\'/js/thickbox/thickbox.css\', null, \'1.0\');
然后,您可以将自己的样式从主题文件中排队,如下所示:

  wp_enqueue_style(\'my-custom-style\',get_bloginfo(\'template_url\').\'/customThickbox.css\',false,\'1.1\',\'all\');
只需将其添加到您删除的位置即可。将WordPress附带的thickbox样式表复制到主题文件夹中,并根据需要进行更改。

结束