0

我有一个文本和一个图像作为 Prettyphoto 内联覆盖打开。但是,当单击其中的图像链接时,它会打开新的标签图像链接。

有没有办法让它在顶部打开另一个漂亮的照片叠加层?那么当图像关闭时,另一个内联覆盖仍然打开?

4

1 回答 1

0

我想出来的方法是让一个不同的灯箱插件自动将 rel=lightbox 添加到所有 img 文件类型。这使它覆盖了 prettyPhoto (我编码为使用 class="prettyPhoto-link" 而不是 rel

在function.php中

  add_filter('the_content', 'chosted_image_attribute');

function chosted_image_attribute($content) {
       global $post;
       $pattern ="/<a(.*?)href=('|\")(.*?).(bmp|gif|jpeg|jpg|png)('|\")(.*?)>/i";
       $replacement = '<a$1href=$2$3.$4$5 rel="lightbox">';
       $content = preg_replace($pattern, $replacement, $content);
       return $content;
}

这是 jquery.prettyPhoto.js 的顶部

jQuery(function($){
    $(document).ready(function(){
        $(".prettyphoto-link").prettyPhoto({
            animation_speed:'normal',
            allow_resize: true,
            keyboard_shortcuts: true,
            show_title: false,
            social_tools: false,
            autoplay_slideshow: false
        });
    });
});

这可以帮助您从 PHP 代码中调用漂亮的照片,因为有时 rel 不起作用。

于 2013-07-20T13:35:00.963 回答