在WordPress主題和插件的開發過程當中,常常須要獲取當前頁面的URL,以前我也寫了個教程,講解如何使用PHP獲取當前頁面的URL,不過使用php編寫代碼受網站環境影響較大,代碼過多。我就在想,能不能使用WordPress原生的函數來實現這個功能呢?未曾想還真找到了方法,你能夠直接使用如下代碼來獲取當前頁面的URL:
1 $current_url = home_url(add_query_arg(array())); 子目錄WP的方法php
不過惋惜的是,若是你的WordPress安裝在子目錄下,且站點地址也使用子目錄(如:www.example.com/wp),那麼以上代碼就無法正常工做了。如下是針對此缺陷的修正代碼,適用範圍更加廣泛:
1 2 global $wp; $current_url = home_url(add_query_arg(array(),$wp->request)); 默認固定連接html
若是你的WordPress使用的默認的連接,安裝在子目錄,站點地址也使用子目錄,同時又是使用帶 ? 的默認連接,如www.example.com/wp/?p=4,你可使用如下代碼來獲取當前頁面URL:
1 2 global $wp; $current_url = add_query_arg( $wp->query_string, '', home_url( $wp->request ) ); 使用說明wordpress
一、若是你的WordPress使用的不是默認的固定連接,首頁是www.example.com這種形式,推薦使用第一部分的代碼; 二、若是你的WordPress使用的不是默認的固定連接,首頁是www.example.com/wp這種子目錄形式,推薦使用第二部分的代碼; 三、若是你的WordPress使用的是默認的固定連接,首頁是www.example.com,文章是www.example.com/?p=4這種形式,推薦使用第一部分的代碼; 四、若是你的WordPress使用的是默認的固定連接,首頁是www.example.com/wp,文章是www.example.com/wp/?p=4這種子目錄形式,推薦使用第三部分的代碼;
參考文章函數
http://www.ludou.org/get_current_page_url.html http://www.stephenharris.info/2012/how-to-get-the-current-url-in-wordpress/網站