当用户位于多站点WordPress站点的子域中时,创建一个保留在子域内的动态链接

时间:2014-03-19 18:15:49

标签: php wordpress url permalinks cname

所以我有一个多站点WordPress环境,它使用以下代码指向另一个产品;但是,当在不是规范的环境中(例如,如果CNAMEaa.site.com,那么ab.site.comac.stie.comad.site.com都使用相同的代码库),该链接会将您引导至正确的产品和页面或帖子,但使用CNAME - 在我浏览产品时我希望子域名保留在哪里。

<a href="<?php echo get_permalink( $this->get_field('page_id.ID') ); ?>" class="button">Product 2</a>

到目前为止,争论的缘故,让我们说我们在http://ab.site.com/product_1/,并希望转到http://ab.site.com/product_2/。目前,网站最初设置的方式(不是我做的,我会在links.template.php中重写get_permalink函数为此做准备;但是,现在游戏为时已太晚了。太多其他可能会破坏的东西。

基本上我正在寻找一个URL/URI ......的东西。有人可以帮忙吗?

如果从头开始,这将是最好的方法:https://core.trac.wordpress.org/browser/tags/3.8.1/src/wp-includes/link-template.php#L0

1 个答案:

答案 0 :(得分:0)

好的,我明白了。解决方案如下:

<a href="<?php 
$url_endpoint = get_permalink( $this->get_field('page_id.ID') );
$url_endpoint = parse_url( $url_endpoint );
$url_endpoint = $url_endpoint['path'];
echo $url_endpoint; ?>" class="button">Go to next product</a>

:)