Feb 28, 2013

Setting up a Guest Poster submission form

We've created a number of functionalities using Blogger and Google Docs Forms as a means of creating submission forms for Blogger sites and customizing how they work. Based on a few requests we've seen we decided to undertake a new variation: creating a Guest Poster Submission functionality for Blogger!

"By doing things that help build your own reputation, you are focusing on the right types of activity. Those are the signals we want to find and value the most anyway."
  -Matt Cutts, Head of Webspam Team for Google, in an interview

The concept in a nutshell:
  • use Blogger's posting using email, or "Mail2Blogger" functionality to have guest posts submit posts IN DRAFT to your Blogger site
  • the guest post submissions will be structured because they will be via a Google Docs Form that you can set up and customize, with the submissions being added into a Google Docs spreadsheet as well as emailed to your blog in the proscribed format. 
  • you set up a "guest poster" gmail account and add it to your Blogger site as an author; all guest post submissions will be made via that account, 
  • you as the admin can choose to publish or delete any submissions that meet your approval

This is all done without giving anyone outside access to your blog, either as an Author or Administrator.

The steps are as follows:
  1. Create the submission form
  2. Embed the form in the website
  3. Change column titles to be one-word columns with no spaces or special characters
  4. Add captcha to form
  5. Set up email posting method under a "guest post" moniker
  6. Enable mail2blogger
  7. Set up and customize email script

Step 1: create the submission form

The form that we've created must use the following fields: Name, Email, Google+ Profile link, Author byline, Submission title, Submission content, Suggested labels, Company title, URL. If you'd like to use others, that's fine, but you'll need to customize the script yourself.

To create the submission form follow these steps in our previous tutorial.

Step 2: embed the form in the website

Again, continue following the steps from Step 1 regarding how to embed the form in your site. You don't need to do the last step in those instructions regarding "get notified of new submissions" unless you want to.

Step 3: change the column titles

Because spaces and special characters can mess up the email script, you'll need to change them in the submission form's spreadsheet. Go to the spreadsheet and make the following changes:
  • Google+ Profile link -> GoogleProfile
  • Author byline -> Byline
  • Submission title -> SubmissionTitle
  • Submission content -> SubmissionContent
  • Company title -> Company

Step 4: add a CAPTCHA to the form

This step is important as it will save you from getting lots of junk submissions as draft posts. Follow our instructions from this tutorial to set up a simple CAPTCHA.

Step 5: set up an email posting method under a guest post

Our recommendation is that you might want to actually create a Gmail account to act as your guest poster to your blog. For instance, I might create "confluentforms-guest@gmail.com" and give that account the first name of "Guest" and last name of "Poster". Once that gmail account is created, invite that account to your blog and set it up as an author.

Step 6: set up mail2blogger

If you're using a guest poster moniker as mentioned in Step 5, you want to login as that account to set up the mail2blogger. mail2blogger will use the account that it is set up under as the author of that post, so if you want "Guest Poster" to be the author of the post within your site, this is how to do it.

Go to the Settings page in your Blogger Dashboard, then go to the Mobile and email page. On that page set up your "posting using email" secret words (which also becomes the email account you use in Step #7) and set the button to be "save email as draft post". Save settings.

Step 7: use the email script

This script is a variation of our "send form submissions as email" script, but what we're doing is structuring the submission information into a nice "guest post" format and emailing that information directly to your blog's mail2blogger account. Pretty cool, right?

The clean version of the NEW script can be found here.

There are really only two variables in that script that you need to change: yourEmail and docKey. For instructions on how to add this script please follow our tutorial in the "send form submissions as email" post, but use this new script instead.

New submissions will show up in your Blogger Dashboard under Posts in Draft. You can see this in action in our new Guest Post page!

For a number of reasons this functionality that we've built does not allow images or attachments, so if you want to get images from the guest post submitter, you'll need to ask them to email them to you, so it's a good thing our form also includes an email address field that is required! All of the data of each submission is stored in your spreadsheet so you can easily refer back to it.

To see an example of what the form page HTML and Javascript code look like in their entirety, you can view the code example here.

To learn more about Guest Blogging and guest blogging best practices give this article a read.