WordPress 引入百度 MIP 技巧:整站 a 链接标签添加 target=”_blank”属性

对于 wordpress 引入百度 MIP 也算颇有一些研究了,也算是完整的做过一套 wordpress MIP 主题了,所以也发现了许多的问题,也研究了一些方法和技巧,为了能够让更多使用 wordpress 开发的网站可以快速改造引入百度 MIP,这里提供了一个快速支持百度 MIP 规则之一的方案及相关代码。

如果你已经注意到百度 MIP 并且试图将你的 wordpress 引入 MIP,你应该已经发现了百度 MIP 对链接的一个硬性要求“target 必须设置为 _blank”,那么问题来了,你的 wordpress 主题所有链接都是添加了这个吗?觉得应该不是,因为在改造移动端主题的时候就发现了,这个属性基本都没有添加,原因就不解释了,也可能是个人开发习惯和对网页使用的习惯了,不习惯网页链接以新窗口的方式打开,特别是在移动端,就算使用了该属性,浏览器也并不一定会新窗口打开,所以就显得代码冗余了。

那么问题也就随之而来了,引入 MIP 又必须添加这个属性,而且我们大多都是使用 wordpress 提供的函数调用等等,各个地方也都非常的繁琐,修改的地方也可能非常的多,所以这次就是为了解决这个问题,直接添加提供的代码,网站前端展示的所有页面的所有 a 链接标签的属性都会添加 target=”_blank”了,就问你牛逼不牛逼。。。哈哈哈,不装逼了,直接上代码。

老规矩,直接将以下代码复制到当前需要引入百度 MIP 的 wordpress 主题的 functions.php 文件中:

//wordpress 整站链接添加 target="_blank",快速引入百度 MIP
add_action('get_header', 'Fanly_mip_target_blank');
function Fanly_mip_target_blank(){
    function Fanly_mip_target_blank_main ($content){
		$regexp = "<a\s[^>]*href=(\"??)([^\" >]*?)\\1[^>]*>";
		if(preg_match_all("/$regexp/siU", $content, $matches, PREG_SET_ORDER)) {
			if( !empty($matches) ) {
				$srcUrl = get_option('siteurl');
				for ($i=0; $i < count($matches); $i++){
					$tag = $matches[$i][0];
					$tag2 = $matches[$i][0];
					$url = $matches[$i][0];
					$target = '';
					$pattern = '/target\s*=\s*"\s*_blank\s*"/';
					preg_match($pattern, $tag2, $match, PREG_OFFSET_CAPTURE);
					if( count($match) < 1 ){$target  .= ' target="_blank" ';}
					$tag = rtrim ($tag,'>');
					$tag .= $target .'>';
					$content = str_replace($tag2,$tag,$content);
				}
			}
		}
		$content = str_replace(']]>', ']]>', $content);
		return $content;
	}
	ob_start("Fanly_mip_target_blank_main");
}

是不是觉得非常非常的简单和便捷呢?

多的就不说了,祝大家在 wordpress 引入 MIP 的路上越走越好,同时也已经提供了一款已经改造好了的wordpress MIP 主题,如果有喜欢的大家可以去试试看。

本文链接:https://www.abcziyuan.com/wordpress/wordpress-course/4949.html

开通VIP会员
分享到: 生成海报
免责声明1. 本站所有资源来源于用户上传和网络,均不允许转载,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 如发现会员转载本站资源文章,本站有权封禁会员账号!
4. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
5. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
6. 如有链接无法下载、失效或广告,请联系管理员处理!
7. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
8. 如遇到加密压缩包,默认解压密码为"www.abcziyuan.com",如遇到无法解压的请联系管理员!
开通VIP会员
切换注册

登录

忘记密码 ?

切换登录

注册

我们将发送一封验证邮件至你的邮箱, 请正确填写以完成账号注册和激活