WordPress利用事件驅動的體系結構,廣泛利用操作和過濾器來動態修改程序執行和內容。 這允許對POST請求進行複雜的處理,主要是通過admin-post.php
>目錄中的wp-admin
>文件。 表格提交在此處指向,以實現集中處理。
>本文演示了從聯繫表,處理數據並重定向用戶的郵政請求。 假定對WordPress插件API的基本熟悉。
> 理解admin-post.php
admin-post.php
有效地處理帖子和獲取請求。 至關重要的是,它會根據用戶登錄狀態觸發不同的操作鉤子:admin_post
>。 更具體的動作,例如admin_post_nopriv
>,可以進行顆粒狀控制。 admin_post_{$action}
>
>
實現聯繫表格
最初在頁面模板中處理的簡單聯繫表被重構以利用。 表單的admin-post.php
屬性已更新為action
,並添加了帶有名稱admin-url('admin-post.php')
的隱藏輸入字段,並添加了一個值(例如,action
)。 這將提交引入正確的處理程序。 contact_form
處理郵政請求>
在主題的>或專用插件中處理後請求。 為簡單起見,我們將使用functions.php
。 操作掛鉤functions.php
和admin_post_nopriv_contact_form
用於觸發自定義功能(例如,admin_post_contact_form
),該功能對帖子數據進行了消毒,生成電子郵件內容並發送電子郵件。 該功能被稱為不管用戶的登錄狀態如何。 prefix_send_email_to_admin
結論
>提供了一種可靠且有組織的方法,用於處理WordPress中的POST請求。 這種關注的分離增強了代碼可維護性和可讀性,促進了WordPress開發中的最佳實踐。
admin-post.php
> 提供的常見問題解答部分仍然相關,並準確地解決了有關處理WordPress環境中發布請求的常見問題。 本節不需要更改。
以上是處理帖子請求WordPress方式的詳細內容。更多資訊請關注PHP中文網其他相關文章!