問題描述
有些情況下,外掛或主題需要在稍後包含它的地方建立一個 php 檔案。例如,一個驗證碼外掛,或某種模板系統,如 twig /smarty(在我的情況下,它是一個小工具集合的簡單模板引擎) 。
這個檔案應該在哪裡建立?
我唯一可以想到的地方是 wp-content/uploads/,但是聽起來不正確:)
那麼有一個安全的地方可以建立檔案,而不用擔心在 WordPress /plugin /主題更新中被刪除?
一個解決方案可能是在 themes /plugins 目錄中建立一個子主題/目錄
最佳解決方案
合適的位置 IMHO 將是您在 wp-content 目錄中建立的自定義資料夾在建立檔案之前閱讀此檔案:http://ottopress.com/2011/tutorial-using-the-wp_filesystem/
次佳解決方案
您不能依賴外掛或主題目錄中的寫訪問許可權,因此 wp_upload_dir()是唯一可能的目錄。但是我真的懷疑有必要將資訊儲存在新檔案中。如果模板是由使用者建立的,請將其儲存在選項中,使用常規外掛功能解析內容 (例如,用 strtr()替換佔位符) 。
第三種解決方案
在 Wordpress 外掛上工作時,我偶然發現了你的問題。我也首先考慮建立臨時檔案來快取我的外掛建立的一些資料。但是,如果您嘗試使用一組伺服器進行擴充套件,這種方法對我來說似乎很奇怪,因為您不希望在一臺伺服器上放置臨時資料。
所以我再次搜尋,似乎有效的解決方案是這樣的問題是 WordPress Transients API 允許您在資料庫中儲存有效期限的資料。當然,您的問題仍然可能需要本地快取的檔案,例如如果它們對於資料庫來說太大了,但是至少我建議看一下這個選項:-)
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。