[英]How can I change absolute URL to relative in WordPress -> pagination -> previous\next_posts_link?
我有: <?php previous_posts_link(' '); ?>
<?php previous_posts_link(' '); ?>
-> <a href="http://example.com/path"> </a>
我需要: <?php previous_posts_link(' '); ?>
<?php previous_posts_link(' '); ?>
-> <a href="/path"> </a>
默认情况下,WordPress使用绝对URL。
您可以创建一个挂钩到get_pagenum_link
的过滤器并更改链接:
add_filter('get_pagenum_link', function($url) {
$base = 'http://example.com/';
if (0 === strpos($url, $base)) {
$url = '/'.substr($url, strlen($base));
}
return $url;
});
或者,您可以通过使用输出缓冲区来捕获整个页面的输出,并根据需要在缓冲区内更改链接。 DOMDocument
和DOMXPath
在这里很有帮助。 另一个有用的库是Net_URL2
,有用的函数是parse_url
和http_build_url
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.