[英]replace string in get_permalink() function?
我正在努力重写URL。 BC facebook没有为Likes(ugh)遵循301重定向。我需要找到一种方法来重写og:url
参数wordpress吐出,以获取http而不是https。
我尝试以下无济于事:
<?php
$oldlink = get_permalink(get_the_id());
$newlink = str_replace('https', 'http', $oldlink);
?>
<meta property="og:url" content="<?php echo $newlink ?>"/>
任何想法为什么这种方法可能行不通?
如果您在header.php中使用它,并且正在加载的页面是单个帖子/页面/自定义帖子,则可以使用the_post();。 在您的语句之前,以启动循环。
<?php the_post(); ?>
<meta property="og:url" content="<?php $oldlink = get_permalink(get_the_id()); $newlink=str_replace('https','http',$oldlink); echo $newlink; ?>" />
事实是,get_the_id()函数仅在循环内起作用,因此如果不初始化它,它将返回错误结果,从而导致get_permalink函数不返回任何有用的信息。
但是请注意,如果稍后在第一个页面之后的同一页面上再次调用the_post,则可能会使您的数据输出混乱。 因此,请确保每个页面仅调用一次(如果您没有创建自定义循环)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.