【7B2主题美化】给B2主题增加一个FancyBox灯箱

众所周知,7b2主题是没有图片灯箱效果的,所以一般大家都是使用插件来使用灯箱,插件或多或少都会拉低网站速度,唔,还是不推荐大家使用灯箱插件,这里我整理了全代码集成FancyBox灯箱,摆脱无用插件

[content_hide]

首先在header.php引入 jQuery 和 FancyBox 文件引入位于 </head> 之前

<script src="//code.jquery.com/jquery-3.3.1.min.js"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fancyapps/fancybox@3.5.7/dist/jquery.fancybox.min.css" />
<script src="https://cdn.jsdelivr.net/gh/fancyapps/fancybox@3.5.7/dist/jquery.fancybox.min.js"></script>

将下面的代码放入你 7b2 主题下的 functions.php 文件中即可实现效果

/**FancyBox图片灯箱**/
add_filter('the_content', 'fancybox1');
add_filter('the_content', 'fancybox2');
function fancybox1($content){ 
    global $post;
    $pattern = "/<img(.*?)src=('|\")([^>]*).(bmp|gif|jpeg|jpg|png|swf)('|\")(.*?)>/i";
    $replacement = '<a$1href=$2$3.$4$5 data-fancybox="images"><img$1src=$2$3.$4$5$6></a>';
    $content = preg_replace($pattern, $replacement, $content);
    return $content;
}
function fancybox2($content){ 
    global $post;
    $pattern = "/<a(.*?)href=('|\")([^>]*).(bmp|gif|jpeg|jpg|png|swf)('|\")(.*?)>(.*?)<\/a>/i";
    $replacement = '<a$1href=$2$3.$4$5 data-fancybox="images"$6>$7</a>';
    $content = preg_replace($pattern, $replacement, $content);
    return $content;
}

[/content_hide]


已发布

分类

来自

评论

发表回复