Post by Email is a way of publishing posts on your blog using your email. Any email client can be used to send the email, allowing you to publish quickly and easily from devices such as cell phones if you don’t have the WordPress mobile app installed.
This module can be enabled by switching on Publish posts by sending an email at Jetpack → Settings → Writing in your site’s Dashboard.
Need more detail? Read on or click directly to the section you want to see.
- Sending emails, formatting emails, and removing signatures
- Dealing with attachments and shortcodes
- Specifying categories and tags
- Changing your Publicize settings
- Inserting polls
- Delaying posts
- Providing post titles and changing post status
- Example email with shortcodes
- Can I use PHPMailer?
Once you have your Post by Email address, sending an email is simple:
The email subject is used as your post’s title. The body is the post’s contents. Please note you can only post to one recipient at a time.
Your email can be plain text or formatted. As much formatting as possible will be retained, although the Post by Email system will strip unnecessary HTML tags so that your email is displayed correctly. In particular, italic and bold formatting will work, while colors and font changes will not.
Note that you will need to use an email client that supports rich text or HTML formatting in order to make use of this feature. Most website based clients (Hotmail, Gmail) do support this, as do most desktop clients (Outlook, Mail). You may need to switch your client into rich text or formatted mode.
Post by email will automatically remove any email signatures that match the standard signature block pattern:
dash dash space)
It will also remove anything after a
<hr/> HTML tag and attempts to clean up cellphone network signatures.
If your email system attaches a signature that does not match any of these patterns then you can manually tell Post by Email to stop including text by adding the special
[end] shortcode on its own line with a blank line above it. Anything after this will be removed from your post. If your cellphone network is adding a signature and you want us to remove it, then let us know the details and we’ll look into it.
Image attachments will be included in your published post as follows:
- Single images will be displayed inline (a single image is defined as an image without an image immediately following it).
- Multiple images will be displayed as a gallery.
Multiple galleries and single images are allowed in the same post. Note that using the
[nogallery] shortcode will disable all galleries.
Special shortcodes can be embedded in your email to configure various aspects of the published post:
[delay +1 hour]
[comments on | off]
[status publish | pending | draft | private]
[title Your post title]
[end]– everything after this shortcode is ignored (i.e. signatures). Make sure it’s on its own line with a blank line above it.
[slideshow]– replaces the auto-gallery with a slideshow
[nogallery]– disables the auto-gallery and displays all images inline
[more]– more tag
[publicize off|yahoo|twitter|facebook]– change Publicize options (see below)
Shortcodes can be included anywhere in the body of your email and must be in lowercase. There should be no spaces between the left square braket and the shortcode content.
Specifying the Category
The category shortcode will match the category-slug specified. For example:
Will match the categories “Holiday” (slug=holidays) and “Main Dishes” (slug=”main-dishes”). Note that categories must already exist on your blog for you to use the slug. If you want to add a new category, just type the new category name in the shortcode along with any other category-slugs. Spaces between the commas are not important.
Any number of tags can be added to your post, each separated by a comma:
[tags one potato, two potato, three potato, more]
This will add four tags: “one potato”, “two potato”, “three potato”, and “more”. Note that your tags do not need to exist elsewhere in your blog and new tags will be created automatically.
Changing your Publicize settings
Jetpack’s Publicize lets you notify other web services about your posts. With the
[publicize] shortcode you can control this from emails. Note that your Publicize settings must have been previously configured for these shortcodes to work. Also, if you have already configured Publicize and don’t include these shortcodes in your post, it will be Publicized to all of your connected Publicize networks.
[publicize off] – disable all Publicize notifications
[publicize twitter] – only send a notification to Twitter
[publicize twitter]my new post[/publicize] – only send a notification to Twitter and set the Twitter status to my new post
[publicize twitter facebook] – Sends a notification specifically to both Facebook and Twitter only.
Note that if you use more than one
[publicize] shortcode in your post (for example, both
[publicize twitter] and
[publicize facebook]), only the second shortcode will be used (in this case,
[publicize facebook]). If you want to Publicize to only those two services such as in this example, you need to use a combined shortcode, like
[publicize twitter facebook].
Delaying Your Post
The delay shortcode will accept any time allowed by PHP’s strtotime. For example, you can:
[delay +1 hour]
[delay +2 days]
Providing a post title
The title of your published post is usually taken from the subject line of your email. In some instances, such as when sending an email from some cell phones or via a MMS-Email gateway, you may not be able to provide a subject. In this instance, you can set your post title directly inside the email:
[title My Fancy Post]
Changing your post status
Sometimes you may want your post to be private, or to be reviewed by yourself or someone else at a later date before being published. To do this, you can use the
[status] shortcode to set the post status.
Example Email with Shortcodes
The following email will be published in two days’ time to the “WordPress” category, with tags “announcement” and “WordPress”:
Welcome to Post by Email, the easiest way to blog!
[tags announcement, WordPress]
[delay +2 days]
Can I use PHPMailer?
No. Our anti-spam controls will always block posts from PHPMailer. The post by email feature is only available for email clients.
This feature is de-activated by default. It can be activated any time by toggling the Publish posts by sending an email in the Post by email section from Jetpack — Settings — Writing in your dashboard.
|Site Owners / Users
This feature utilizes the local ID of the user configuring or publishing via this feature. This ID is used to check for an active Jetpack connection and actually create/update the email address for posting.
Additionally, for activity tracking (detailed below): IP address, WordPress.com user ID, WordPress.com username, WordPress.com-connected site ID and URL, Jetpack version, user agent, visiting URL, referring URL, timestamp of event, browser language, country code.
|Site Owners / Users
We track when, and by which user, the feature is activated and deactivated. We also track when, and which, configuration settings are modified.
|Data Synced (Read More)|
|Site Owners / Users
We sync options that identify whether or not the feature is activated and the configured email address used exclusively for posting content.