2013-01-15 110 views
3

我創建爲WordPress一個新的插件,需要一個外部網站使用的Web服務。舉例來說,如果有兩個站點,A和B,該插件將在一個與安裝在存儲WPDB爲站點A.站點B將使用Web服務來從網站A.搶在XML格式的數據所有相關數據公開Web服務,通​​過WordPress的

這可能嗎?什麼是最可靠的解決方法?

我可以在我的插件中將Web服務作爲PHP文件使用,但這需要外部域名如下: http://www.domain.com/wp-content/plugins/plugin-folder/web-service.php。暴露Wordpress設置的深度似乎是個不錯的主意。

我可以讓我的插件在根中創建幾個文件,這樣Web服務調用將會是http://www.domain.com/web-service.php,但讓我的插件安裝在插件目錄之外也是一種不好的做法。

另一個想法:我可以把文件在我的插件文件夾,但在.htaccess中添加一行,使http://www.domain.com/web-service.php去嗎?

沒有人有最好的,最安全的方式去了解這個有什麼想法?

回答

2

我會成立在.htaccess重寫規則,讓用戶得到您的代碼不知道它在哪裏。我不認爲有一個簡單的方法,以特定路由添加到WordPress的前端控制器,但是你可以看到,如果有一個動作或過濾器來做到這一點。

編輯:

這裏有添加路由https://wordpress.stackexchange.com/questions/26388/how-to-create-custom-url-routes

+0

我認爲這將很好地工作(當我弄清楚如何得到它重寫我想要的方式)。這似乎是將所有內容保存在一個自包含的插件文件夾中,同時連接到Wordpress的最佳方式。謝謝彼得! – skustes

0

我個人認爲一個帖子,如果我安裝了一個WP插件,你在我的根目錄下創建一個新的文件,我就可以刪除的文件或插件一起。我也會盡量避免添加.htaccess文件。這會再次讓我感到懷疑。

我會做的是,一旦安裝ping站點B(您的站點)上的文件,捕獲站點A(他們的網站)上的插件文件夾的位置,因爲WP可能安裝在目錄內而不是根。然後你知道「web-service.php」文件的位置。然後,只要你需要,你就可以打這個文件。沒有理由.htaccess規則或創建新文件。

只是一個建議:)

+0

可以將路由添加到WordPress前端控制器。 –

+0

是的,這就是爲什麼我不想在根上添加文件的原因。我也會懷疑這一點。我認爲彼得的方式是要走的路。 – skustes