I've been wracking my brains all day trying to troubleshoot this issue.
Essentially, using post-by-email and the exact same HTML content, shortcodes work in one blog but not the other.
I'm using WP's built-in post-by-email feature for some PHP-based email forms. The user fills out a form and the form is then emailed as an HTML email. WordPress continually checks this email inbox and creates a new blog post for any new emails that are received. All that is working perfectly.
Within each email, I've placed shortcodes to assign each post a category, tag, and title. In my test blog, which is on wordpress.com, these shortcodes are processed perfectly. Yet when I switch the post-by-email email address to the actual blog, the shortcodes do not register.
For instance, the HTML email may contain this:
In my wordpress.com test blog, the above would properly assign the post to the CAS category. In the actual blog, the above would remain as text within the post and the post category would be left as Uncategorized (or the default category).
What I have tried so far
- Disabled all plugins
- Changed the theme to the default, as well as two others
- Changed the theme to the default while all plugins were disabled
- Placed line breaks in between shortcodes for "category" and "tags"
- Used only one type of shortcode per post
- Changed email address to an entirely different domain on a new server
- Removed all widgets
None of these changes solved the issue.
Because of the above testing, the issue appears to be related to the actual blog itself. Could there be a PHP function that is preventing shortcodes from being recognized? (And if so, would switching to a plugin like Postie be of any utility?)
The actual blog is running:
- Theme: Genesis 1.0.2 (but I've also tried several others, as mentioned above)
- WordPress 3.3.1
The test blog is running:
- Theme: Chunk
- WordPress.com's current version (I'm guessing this would also be 3.3.1. Unfortunately, it does not list it on the Dashboard page.)
Any help would be greatly appreciated!