Setting Up Gravity Forms Notifications Settings

Gravity Forms notifications are set up in the individual settings of each form. Under notifications, select Admin Notification (the default).

The Send to Email should be set to the email addresses the form should go to.

From Name can be set from the drop down to the right. The First Name should be selected, then a space, then Last Name.

From Email should be set to something like wordpress@<site URL>.

Reply to should be set to the user’s Email address (again, in the right hand dropdown).

BCC to admin email address.

Subject remove all but New Submission Form and add  First Name , then a space, then Last Name, as before.

If this form is in a sidebar, add Embed Post/Page Title into the Message.


Setting up Contact Form Goals on Google Analytics

  1. Create a thank you page.  Take note of the page title and the URL.  Use a unique title if setting up multiple forms so its easy to find this page.  For example ‘Thank you requesting a consultation’.
  2. Go to the advanced tab of the Yoast portion of the page and exclude the thank you page from the sitemap and set it to noindex.
  3. Go to Forms > Selected Form > Confirmations – Select a page confirmation and choose the newly created thank you page as the confirmation.
  4. In Google analytics go to the Admin menu and select Goals > Custom Goal > Destination.  Use the partial URL of the page include leading and trailing slash. (/thanks-quick-contact/)

WordFence Configuration

WordFence is a security plugin that we install to all our sites before launch. It is a very powerful tool with many capabilities so this post should help optimize the plugin to fully utilize the features.

Once WordFence is installed, you have to go to Options link under the WordFence button in the Dashboard menu. WordFence will ask you to enter your email and then you can proceed with the configuration.

Basic Options:

  • You should uncheck the Enable Live Traffic View because it will tremendously slow down your site load-up speed.
  • For the to “How does Wordfence get IPs:” you want to select the “Use PHP’s built in REMOTE_ADDR…” option from the drop-down.

Advanced Options:


Uncheck the “Alert when someone is locked out from login” and “Alert me when someone with administrator access signs in” options.


Make sure all options are selected


The following image will show you how I configured the firewall options. You can choose to change the options to better suit your needs and you can also choose to block the users or crawlers that break rules rather than throttling them.


Login Security Options:

  • Change the drop-down values  for the “Lock out after how many login failures” and “Lock out after how many forgot password attempts” options to 5.
  • Change the “Amount of time a user is locked out” to 30 minutes.

Other Options:

You want to enter your site’s IP Address into the “Whitelisted IP addresses that bypass all rules:” field.


Getting special character HTML to show up in HTML code

If you type in something like & copy ; and then toggle back to the visual editor it will convert this to ©

Some older computers will not be able to interpret this symbol and show a question mark it its place.  To prevent this from happening we found this code on Stack Exchange.

// Custom configuration for TinyMCE
function wpsx_54398_configure_tiny_mce( $initArray ) {

    // Add some common entities to the default array (copy, reg, trade, service mark, euro)
    // The odd entires are the entity *number*, the even entries are the entity *name*. If the entity has no name,
    // use the number, prefixed with a hash (for example, the service mark is "8480,#8480").
    $initArray['entities'] = $initArray['entities'] . ',169,copy,174,reg,8482,trade,8480,#8480,8364,euro';

    return $initArray;

add_filter('tiny_mce_before_init', 'wpsx_54398_configure_tiny_mce');

Getting images to float without extra margin or page breaks

By default the WordPress visual editor will ad ‘p’ tags to all of your text and images. When you are floating an image the p tag around it can create more margin than you want, and it often ads an extra ‘br’ tag to the code which can cause spacing problems.

Add the following code to the functions.php file to prevent the IMG tags from being wrapped in a p tag.

Thanks to for this code.

function filter_ptags_on_images($content){
   return preg_replace('/<p>\s*(<a .*>)?\s*(<img .* \/>)\s*(<\/a>)?\s*<\/p>/iU', '\1\2\3', $content);

add_filter('the_content', 'filter_ptags_on_images');

Setting Up Site-Search on Google Analytics

Google Analytics Site Search

  1. After logging into Google analytics, you want to select the profile on where you would like to track the searches.
  2. Click on the admin tab on the top right of the Navigation menu and select the View Settings option under View Column (first option in the column on the right)
  3. Scroll down until you see the Site Search Settings header and turn the button on to allow site search tracking.
  4. In the input field below labeled “Query parameter”, please enter the query parameter for your searches on your site.
    • Just make a test search on your site and look for the letter after the “?” in your URL
    • Enter that letter into the input field(usually the letter “q” or “s”….The WordPress Default is “s”)
  5. You can also track category searches if you please by turning on the Site search categories button and entering the category parameters in the input labeled “Category Parameters”.
  6. Now just Click Save and you are all set!

Website Launch Checklist

Before you launch

Update all plugins and WP core.

Before you run your testing make sure you update everything so you don’t have to retest it again later.

Cross browser testing

Cross browser testing should be done on all page templates (not necessary for all pages) on the following browsers/devices.

  • Internet Explorer 9, 10, 11
  • Latest Version of Firefox
  • Latest Version of Chrome
  • Safari running on a Mac
  • iPhone
  • Android Phone
  • Use Safari Developer mode to test Ipad view.
  • Use to check responsive view on major mobile screen sizes.

Make a backup of the old site

If it was a WordPress site make sure to grab all of the files in wp-content and a copy of the database.  If it was an HMTL site you can download all of the files and zip them up.  If you do not have FTP access to the old site use the program to download a copy of the site.


Check your 404 page by entering a random URL.  You should also perform and check the search template to make sure they look ok.

Before you switch the nameservers or change the @ record put the old nameservers or the old IP address into the password file in case you need to revert back to the old site.

Launching the site (After the DNS switches over)

You will need to change the site address in the wp-config.php file to reflect the live URL.  Do NOT include a trailing slash on the live domain.

Add the website to InfiniteWP by installing or deactivating and reactivating the IWP client plugin.  Create a backup and confirm that it worked before running search and replace.

Install the search and replace plugin.  Do a search in all areas of the database for the development URL and replace it with the live URL.  Be careful not to include a slash on one URL and not the other.  See screenshot for recommended strings.

Screen Shot 2014-04-02 at 11.43.07 AM

Search and replace does not seem to work in widget areas so review all widget areas for links to the old site URL.  Check common theme template files for hard coded links.

Go to settings > reading and uncheck the box to allow search engines to crawl the website.  Go to and enter the site URL for a quick check of any broken links.  Fix any that you see.

Gravity Forms settings

If you are going to set up Google Analytics goals make sure you create a thankyou page and set the confirmation to go to the thank you page.

Set the send to email address to the client, we also BCC our info@ address so we have an extra copy of any forms.  Set the Send As address to the info@ or other generic email that the client uses.

Change the subject of the form to include the name of the person who filled it out the form, not the title of the form itself.

Send a test message to the client and ask them to “forward this message back to me to confirm receipt”.  If they do not receive the form tell them to check their spam.  You may need to set up SMTP email if it is not getting through.

Install and Configure Security Plugin

Follow the instructions on the iThemes Better WordPress Security post.

Website Setup for SEO clients

Yoast Settings

Configure the SEO settings to no index sup pages of archives.  No index any post types or formats that are not being used as independant URL’s.  For example we may have a post type for SLIDES but these URL’s are not supposed to be viewed individually.  You should also noindex attachments.

You can noindex post formats, and tags if they are not being used.  You can disable the SEO meta box on any post types that are set to noindex.

301 redirects

Install the Simple 301 redirects plugin.  Do a search on Google for to return a list of all URL’s indexed by Google.  Go through each URL and create a redirect to a similar page on the new website.  If a page no longer exists then create a redirect to the home page.

Setup Google analytics.

Create a Google account. See this post for more details. as well as this post for setting up Goals.

Be sure to share Google analytics with the SEO account manager (charlie.strickler) and the info@boom email address.

Setup Webmaster tools

Add a site to Google WMT and share with the SEO account manager (charlie.strickler) and the info@boom email address.

Create a Microsoft account and add a site to Bing webmaster tools.


Add to tracking spreadsheets and monitors

Add site to technical spreadsheet on Google docs. Add to backup schedule on InfiniteWP, Add to uptime monitor on Infinite WP, Add to update group.

Final Steps

Delete any development plugins.  This often includes search and replace, regenerate thumbnails.  If you are moving the site from a different host you can delete the old development files.

Run a sitemap generator like  Examine the results for broken links, hashtag links, and any URL’s that still point to the development site.

Download W3 total cache or use infinity cache for WP Touch websites.  See this post for how to configure W3 total cache. –

Run a sitespeed test using  Add any issues with page load speed to your notes about the launch.

Make a backup on Infinite WP called “PostLaunch”.

Add to Hosting and Updates spreadsheet.

Configuring W3 Total Cache

We leaned heavily on advice from WP beginner in this article –

Basically they recommend that you enable Page Cache and Browser Cache which are enabled by default.  You do not need to enable database caching or object caching or minify.

Browser caching is enabled by default but there are some settings to enable in browser caching.

  • Disable cookies for static files