微慕小程序基础教程:WordPress文章页内链如何自动实现小程序内跳转?

 懿古今   2022-11-01 23:43:31 发布  技术文档

懿古今前面已经跟大家分享了『微慕小程序基础教程:WordPress文章中的链接如何设置才能实现小程序内跳转?』,不够每次都需要手动去添加小程序链接属性,非常麻烦。今天才想到完全可以利用以前WordPress站点外链变内链的方法来判断文章页的链接是否为内链页面,如果是就提取该链接的ID,并自动添加上小程序的链接属性。

微慕小程序基础教程:WordPress文章页内链如何自动实现小程序内跳转? - 第1张 - 懿古今(www.yigujin.cn)

WordPress文章页内链自动实现小程序内跳转的步骤

1、将以下代码添加到当前主题的functions.php文件中并保存更新文件:

//给内部链接加上微信小程序属性实现小程序内跳转
add_filter('the_content','the_content_nofollowxcx',999);
function the_content_nofollowxcx($content)
{
preg_match_all('/<a(.*?)href="(.*?)"(.*?)>/',$content,$matches);
if($matches){
foreach($matches[2] as $val){
if(strpos($val,'www.yigujin.cn')!==false){
preg_match('/https:\/\/www.yigujin.cn\/(\d+).html/',$val,$number);
$content=str_replace("href=\"$val\"", "href=\"$val\" appid=\"wx123456\" path=\"/pages/detail/detail?id=$number[1]\" redirectype=\"apppage\" jumptype=\"redirect\" target=\"_blank\" rel=\"noopener\"",$content);
}
}
}
return $content;
}

2、修改以上代码第8行和第9行网址为自己网站地址,第10行appid为自己小程序ID或留空也行。

特别说明:

1、以上方法仅适用于WordPress站点的固定链接选择了/%post_id%.html结尾的URL结构,其他结构无法实现。

2、如果你的站点所使用的主题本身就有外链转内链的代码,那么完全可以将本文所说的代码结合到外链转内链的代码中。另外,如果你的外链转内链中/go/?url=结构,还需要将上述第8行代码修改为(PS:其他结果类似,若使用加密链接则无需理会):

if(strpos($val,'www.yigujin.cn')!==false && strpos($val,'/go/')===false){

本文地址:https://www.yigujin.cn/5324.html

您可能感兴趣的文章

文章标签: ,   ,  
版权声明:本文为原创文章,版权归 懿古今 所有,欢迎分享本文,转载请保留出处!发布此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请发邮件至[email protected],确认后马上更正、删除,谢谢!
淘宝和京东热销产品和VIP会员的优惠券推荐

发表评论

  1. 明月登楼
    明月登楼 @回复

    个人主体微信小程序的福音,哈哈!

    • 懿古今
      懿古今2022-11-03 22:02  回复

      @明月登楼确实,自动添加小程序链接属性比起人工添加更高效,而且也不会忘记添加。