【问题标题】:How can I change absolute URL to relative in WordPress -> pagination -> previous\next_posts_link?如何在 WordPress -> 分页 -> previous\next_posts_link 中将绝对 URL 更改为相对 URL?
【发布时间】:2011-11-23 08:34:25
【问题描述】:

我有: <?php previous_posts_link(' '); ?> -> <a href="http://example.com/path"> </a> 我需要: <?php previous_posts_link(' '); ?> -> <a href="/path"> </a>

【问题讨论】:

    标签: php wordpress url pagination relative-path


    【解决方案1】:

    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;
    });
    

    或者,您可以通过使用输出缓冲区来捕获整个页面输出并根据缓冲区内的需要更改链接。 DOMDocumentDOMXPath 在这里很有帮助。另一个有用的库是Net_URL2,有用的函数是parse_urlhttp_build_url

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-08
      • 1970-01-01
      • 2016-12-05
      • 2014-12-12
      • 1970-01-01
      • 1970-01-01
      • 2019-05-10
      相关资源
      最近更新 更多