WEB主題公園
WordPress原創(chuàng)主題,高端網(wǎng)站模板建站,網(wǎng)站模板建站資源以及開發(fā)知識分享,盡在WEB主題公園
WEB主題公園致力于開發(fā)適合中國人習(xí)慣的中文WordPress網(wǎng)站模板,并提供全程視頻教程,讓您能夠輕松的使用網(wǎng)站模板建立好自己的網(wǎng)站!
在wordpress主題中使用獨立的php文件
wordpress主題中的獨立php文件引用所出現(xiàn)的問題
我們在項目開發(fā)中,有時候會要用到獨立的php文件,而wordpress主題所識別的一些文件并沒有包含我們的獨立文件。
一般來說,我們在wordpress主題中需要增加的函數(shù)是放在function.php中的,我們也可以在function.php中引用我們的獨立php文件,所編寫的判斷或者函數(shù)都可以在主題中被運用。
但是不管在function.php中還是引用的其他文件,我們都只能從站點地址發(fā)出請求,比如get請求,我們只能在域名如www.dengyin90.cn?getsome=true,返回也是在首頁上進行返回的。
這樣的方式可以滿足我們的一些功能,但是某些需要使用獨立php的功能就無法實現(xiàn)了。
比如下方的例子。
我們需要訪問主題中某個php文件如get_json.php文件輸出一段json數(shù)據(jù),如果我們包含在function.php中進行請求,那么輸出的json是疊加在首頁上的,這樣不管我們使用php去獲取或者使用js獲取都是無法獲取到這個數(shù)據(jù)的。
如果我們直接訪問這個php的絕對路徑,也就是獨立使用這個php,那么不管是wordpress的函數(shù),還是我們放在function.php中的函數(shù)都是不能是別的,會提示報錯沒有這個函數(shù)。
那么,我們?nèi)绾谓鉀Q在wordpress主題中使用獨立php文件,能夠使用到wordpress自帶的函數(shù)和主題內(nèi)function.php中的函數(shù)呢?
wordpress主題使用獨立php,引用wordpress的配置文件
解決上文所述的問題實際上比較簡單,我們只需要在獨立的php中引用wordpress的配置文件wp-confing.php就可以使用到wordpress的函數(shù)和wordpress主題的函數(shù)了。
因此我們在獨立使用php文件時,在文件的頂部引用一下wordpress的配置文件就行了。
wordpress的配置文件在網(wǎng)站的根目錄,因此如果我們直接使用require_once時無法引用到的,我們需要使用絕對路徑去引用:
在文件頭加入如下代碼:
$genmul=$_SERVER['DOCUMENT_ROOT'];
require_once("$genmul/wp-config.php");
即可引用到,不過這個代碼是直接引用的根目錄,如果你的目錄形式是使用子目錄的 ,如在本地常見的http://localhost/wordpress/,就需要在引用的地方加上你的子目錄:
$genmul=$_SERVER['DOCUMENT_ROOT'].'/wordpress';
require_once("$genmul/wp-config.php");
這樣,我們的獨立php文件就能夠正常運行了,如上問所說的輸出json數(shù)據(jù),直接訪問這個php文件發(fā)出請求,判斷正確的話,就會輸出json數(shù)據(jù),而不會有別的內(nèi)容干擾,我們就能非常方便的獲取到這個數(shù)據(jù)了。
這樣做的目的具體有些什么用處
上面說了在wordpress主題中使用獨立php的方法,下面分享一下我們在最近的項目中使用這個方法進行的功能開發(fā)。
wordpress本身是動態(tài)程序,因此如果我們將一些數(shù)據(jù)和請求放在function.php,當(dāng)網(wǎng)站是動態(tài)的話,是沒有問題的,直接解析php文件,如果我們使用插件,將全站進行靜態(tài)化處理之后,解析的是html文件,那么很多函數(shù)的判斷在靜態(tài)文件中是失效的。
如果我們希望在靜態(tài)網(wǎng)站中,使用動態(tài)的功能,那么我們可以使用獨立的php文件,并且在首頁或者底部頂部使用jq,也就是腳本訪問這個獨立的php,由于直接訪問的文件,因此不會受到靜態(tài)緩存的影響,服務(wù)器還是能正確的運行獨立php,從而輸出我們想要的內(nèi)容,在通過jq腳本輸出到首頁,這樣就繞過了靜態(tài)網(wǎng)站,獲取到了動態(tài)生成的數(shù)據(jù)。
因此這個方法還是非常有效的,前文所說的,php文件輸出json數(shù)據(jù),也是使用直接訪問php文件輸出是最好的辦法,簡單有效。
今天的開發(fā)經(jīng)驗分享就到這里,如果你也有類似的項目,那么希望這篇文章能夠給你帶來一些啟示。
如未標(biāo)明出處,所有文章均為WEB主題公園原創(chuàng),如需轉(zhuǎn)載,請附上原文地址,感謝您的支持和關(guān)注。
本文地址:http://www.dengyin90.cn/zwordpressztzsydldphpwj.html
推薦閱讀
- 2013年10月18日
- 2014年7月30日
- 2012年9月8日
- 2013年10月5日
- 2016年8月23日
- 2015年10月16日
- 2015年2月5日
- 2015年9月21日
- 2013年9月14日




