WordPress中获取当前页面URL

标签:WordPress教程
如需帮忙改代码,或者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这种子目录形式,推荐使用第三部分的代码;

参考文章

https://www.ludou.org/get_current_page_url.html
http://www.stephenharris.info/2012/how-to-get-the-current-url-in-wordpress/

-- 完 --

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

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