An interactive website needs to be able to interact with user input, which is commonly in the form of form submissions. A WordPress site is no exception to this rule. There are various interactions happening on a website on a daily basis. For example, subscribing to a newsletter, sending a message to the site owner and filling in an order form. All of these usually happen from POST
requests during a form submission.
In this article, we're going to take a simple example of handling a POST
request from a user, which is submitted via a contact form. We are going to use an internal WordPress hook to properly get the data, process it accordingly and redirect the user back to a specific page.
This article assumes you have a basic knowledge of the WordPress Plugin API. If you’re not familiar, it’s highly recommended to become review the Codex page first.
The Background
WordPress is based on an event driven architecture. This means internally, WordPress core is filled up with various actions and filters to modify the program execution or to alter the content during runtime. Examples of actions that are running during program execution are init
, wp
, template_redirect
and wp_head
. Many plugins utilise these actions and filters to modify how WordPress works.
It is no different with what we are going to achieve. All we need to know is the proper hooks needed for the POST
request and to modify our code accordingly. This is possible by pointing all our form submissions to a specific file in the wp-admin
directory called admin-post.php
. If you have experienced integrating your application with WordPress internal AJAX API, then you will notice that the basic structure of admin-post.php
is not much different to the admin-ajax.php
counterpart.
Continue reading %Handling POST Requests the WordPress Way%
by Firdaus Zahari via SitePoint
No comments:
Post a Comment