1. <div id="11111"></div>

    1. <div id="11111"></div>

      1. <div id="11111"></div>

        WordPress中获取当前页面URL

        日期: 标签:WordPress教程 24 条留言
        如需帮忙改代码,或者WordPress二次开发、PHP网站建设等需求,可联系我购买付费服务:  点此联系我
        文章目录

             在WordPress主题和插件的开发过程中,经常需要获取当前页面的URL,之前我也写了个教程,讲解如何使用PHP获取当前页面的URL,不过使用php编写代码受网站环境影响较大,代码过多。我就在想,能不能使用WordPress原生的函数来实现这个功能呢?不曾想还真找到了方法,你可以直接使用以下代码来获取当前页面的URL:

        $current_url = home_url(add_query_arg(array()));

        子目录WP的方法

             不过可惜的是,如果你的WordPress安装在子目录下,且站点地址也使用子目录(如:www.example.com/wp),那么以上代码就没法正常工作了。以下是针对此缺陷的修正代码,适用范围更加普遍:

        global $wp;
        $current_url = home_url(add_query_arg(array(),$wp->request));

        默认固定链接

             如果你的WordPress使用的默认的链接,安装在子目录,站点地址也使用子目录,同时又是使用带 ? 的默认链接,如www.example.com/wp/?p=4,你可以使用以下代码来获取当前页面URL:

        global $wp;
        $current_url = add_query_arg( $wp->query_string, '', home_url( $wp->request ) );

        使用说明

             1、如果你的WordPress使用的不是默认的固定链接,首页是www.example.com这种形式,推荐使用第一部分的代码;
             2、如果你的WordPress使用的不是默认的固定链接,首页是www.example.com/wp这种子目录形式,推荐使用第二部分的代码;
             3、如果你的WordPress使用的是默认的固定链接,首页是www.example.com,文章是www.example.com/?p=4这种形式,推荐使用第一部分的代码;
             4、如果你的WordPress使用的是默认的固定链接,首页是www.example.com/wp,文章是www.example.com/wp/?p=4这种子目录形式,推荐使用第三部分的代码;

        参考文章

        http://www.szeverich.net.cn/get_current_page_url.html
        http://www.stephenharris.info/2012/how-to-get-the-current-url-in-wordpress/

        -- 完 --

        本文采用 「CC BY-NC-SA 4.0」创作共享协议,转载请标注以下信息:
        原文出处:露兜博客 http://www.szeverich.net.cn/how-to-get-the-current-url-in-wordpress.html
        露兜
        kaapass@outlook.com  QQ 825533758

        业余编程爱好者,主业是淘宝店主,卖些工艺品,感兴趣可以到我的淘宝店看看(旺旺不提供技术咨询):西西弗sisyphe

        24 条留言

        点此留言
        1. xiaomingtt

          学习一下

        2. 云淡然

          这个可以有~简单很多了~

        3. SK-BLOG

          来学习了….

        4. 站长你好

          站长你好。
          你开发的垃圾评论过滤插件,是我用的WP插件里效果最好的、最有效的,解决了数年来的英文垃圾狂轰滥炸,每天博客都有几千的英文垃圾群发跟贴,用上你的插件,立即就没了,效果是立竿见影。
          但是这几天,新情况出现了,出现了很多日文的垃圾跟贴,一天也是几百上千。能不能根据新情况,设计屏蔽日文的插件呢,供您思考。感谢,叩首!

          • Ludou

            @站长你好 中文和日文有很多相似的地方,完全分辨中文和日文比较复杂。
            给你的提供的方法,一、如果是单纯一个IP,就禁止这个IP访问;2、使用 小墙 插件;3、使用AJAX的评论方式;4、使用多说等第三方评论插件

        5. 南寻

          学习咯~

        6. oyoy

          学习,记录起来备用

        7. ilikecss

          我只想要如何获取用户浏览记录。。。

        8. 哼哼猪

          来学习一下

        9. 电脑爱好者

          我的好像是第二种…

        10. Era

          大神你好!
          请教你一个问题。在制作WordPress主题的时候遇到这样一个问题,一个父分类下面好几个子分类,我想实现同一个父分类下不同子分类之间的文章可以实现连续翻页.
          我现在的代码是这样子的.
          <?php previous_post_link('%link','上一章', TRUE) ?>
          <?php next_post_link('%link','下一章',TRUE) ?>
          这两个实现翻页的代码是放置在single.php里面.
          这样的代码,可以实现单个子分类下的文章翻页,当到单个子分类最后一篇文章的时候,不能翻页到 同一个父分类下另外一个子分类的第一篇文章.
          不知道大神有好的解决办法没有? 谢谢!

          • Ludou

            @Era 请同时勾选父分类和子分类

            • Era

              @Ludou 你好!
              代码是在single.php里面 没有法进行勾选吧?

              • Ludou

                @Era 文章编辑页(点击文章-写文章那个页面)的分类目录
                先自己试过再发表评论,谢谢!

        11. 胡倡萌

          经过测试,二级域名下,两种代码返回的都是首页URL,不能获取当前URL

        12. 胡倡萌

          纠正一下,第二种方法即使在二级域名下,也可以获取当前链接,但是要在前面添加 全局变量 global $wp;

          希望补充提示下

          • Ludou

            @胡倡萌 感谢提醒。代码已修改。

            • 胡倡萌

              @Ludou 再次发现个问题,貌似如果固定连接设置为默认的带?的那种,这种方法也是无法正确获取的。希望老大也测试下,看看是否真如此

        13. 否子戈

          最后的总结中似乎1、3可以合并为:如果首页根目录形式,不管固定链接格式,都选择第一种代码。
          根据这个文章的思路,写一个函数如下:

          function wp_current_request_url(){
          global $wp;
          $home_root = strpos(home_url(),'/') === false ? true : false;
          $permalink = trim(get_option('permalink_structure')) != '' ? true : false;
          if($home_root){
          return home_url(add_query_arg(array()));
          }
          if(!$home_root && $permalink){
          return home_url(add_query_arg(array(),$wp->request));
          }
          if(!$home_root && !$permalink){
          return add_query_arg($wp->query_string,'',home_url($wp->request));
          }
          }
          尚没有测试,不知是否可行

        14. Lar

          第一种在首页会输出http://example.com/xmlrpc.php

        15. abu

          老大,我的博客是纯图片主题,文章进行了分页,每页一张图,有没有办法点击图片跳到下一页?

        16. 龙笑天

          能否获取页面的完整链接 包括锚点,及其它参数~

        发表留言

        可以挣钱的游戏 238| 802| 249| 882| 4| 493| 377| 702| 28| 702| 42| 762| 293| 93| 570| 988| 296| 367| 767| 601| 567| 967| 789| 5| 826| 162| 557| 229| 788| 45| 776| 744| 397| 419| 703| 119|