Posting a form in WordPress sends you to a 404 page

Recently I had to write an integration to a third party iframe embedded application. It really wasn’t pretty and I’ll write up the results soon for that BUT the big thing I faced was an issue where by *posting a form to a WordPress page resulted in a 404 error*.

I tried all sorts of things to fix it and couldn’t even get a result out of adding

echo '<pre>';
echo print_r($_POST, 1);
echo '</pre>';

nothing. Not a damned thing!

So I tried setting up a simple form with just a field called field1 and it worked fine!

So, after a bit of searching forums and blog posts I finally found out that there are a bunch of reserved field names that you MUST NOT USE under any circumstances when trying to post a form to a WordPress page.

So, simply change the form field names to ones that aren’t on the list and all will be fine.

The most commonly used by me reserved field names are:

  • day
  • debug
  • error
  • m
  • name
  • year

and a full list can be found here: http://codex.wordpress.org/Function_Reference/register_taxonomy#Reserved_Terms

Hope that helps!

Leave a Reply

Your email address will not be published. Required fields are marked *