• Skip to main content
  • Skip to primary sidebar
  • Skip to footer

EqualServing

WooCommerce, ActiveCampaign, 1ShoppingCart, Infusionsoft Expertise.

  • Services
    • Build Websites
    • Task Automation
      • ActiveCampaign Marketing Automation
      • Process Automation with Infusionsoft
    • Website Content Migration
    • Service Bundles
    • Third Party Software Integration
    • WordPress Plugin Development
  • About Us
  • Contact
  • Blog
  • Shop
    • Service Bundles
    • WordPress Plugin For 1ShoppingCart.com V2.0
    • WordPress Themes
    • All Our WordPress Plugins
  • Support
    • FAQ – 1ShoppingCart Plugin For WordPress – GENERAL
    • FAQ – 1ShoppingCart Plugin For WordPress – FREE
    • FAQ – 1ShoppingCart Plugin For WordPress – PREMIUM
    • Contact Support

Blog Archive

You are here: Home / Blog Archive

Blog Archive

W3 Total Cache Garbled My Simple Social Icons

March 5, 2014 by Michele Leave a Comment

I put it off long enough. My site was in desperate need of optimization. I installed the popular W3 Total Cache plugin and then began the task of configuring it for my needs. I will not get into the specifics here – I will let the plugin’s developers and experts guide you on the configuration.

I won’t lie, it took some time to get the site configured with W3 Total Cache but when all was said and done, I was sad to see that while the pages loaded much quicker, the graphics of the Simple Social Icons plugin displayed garbled nonsense. You can see what I’m talking about below –

simple-social-icons-garble

I found others had similar problems but what resolved their problems had already been coded and accounted for by the developers of the W3 Total Cache plugin.

I tried a few things to no avail but because I minified the CSS of the site, I went to the Minify settings at – {website.com}/wp-admin/admin.php?page=w3tc_minify and scrolled down to the Advanced area and specifically the Never minify the following CSS files setting. In Never minify the following CSS files field I entered the path to the Simple Social Icons’ style sheet which in my case was => /wp-content/plugins/simple-social-icons/css/style.css

Once I made that change …

Viola! Problem solved.

Filed Under: How To, Wordpress

How To Present An Infusionsoft Product Bundle with Gravity Forms

February 25, 2014 by Michele Leave a Comment

Last month, Infusionsoft hosted a Mastermind call about building a dynamic checkout process which started me thinking about how to implement such a feature for a client. By the way, if you are an Infusionsoft user and you are not attending the weekly Mastermind calls, you are really missing out. I have been well impressed with the topics they cover.

In the Mastermind Demonstration, which you can view at the Mastermind Archive, Corey Harding of Infusionsoft builds a dynamic checkout process using an Infusionsoft web form and an Infusionsoft product bundle link.

What is the Infusionsoft Product Bundle Link?

Through a product bundle link, Infusionsoft provides a mechanism to add multiple products to the shopping cart in one click.

As Corey explains in the video, the bundle link has to be “built” using the product ids and quantities included in the bundle. One stipulation in building the link – a product id CANNOT have a quantity of zero (0). Therefore, he uses a JavaScript (provided on the MM archive page) to remove any products with a quantity of zero (0) from the query string which is submitted to the Infusionsoft bundle process. If you include a product id with a quantity of zero (0) in the query string, the bundle link will fail.

The Infusionsoft bundle link has the following form where the query string lists the productId and productQuantity of all the products you want to add to the shopping cart –

https://{ifsapp}.infusionsoft.com/app/manageCart/processBundle?productId=1&productQuantity=1productId=2&productQuantity=10&productId=3&productQuantity=9

Once I saw what Corey did, I was sorry I did not think of it myself. It works especially well with Gravity Forms for a product that includes many options. Let’s say for demonstration purposes, I am selling a plugin. Along with the plugin, I offer an eBook that explains some of the nuances of the plugin and how to make the most of your purchase. I also offer installation of the plugin and an annual premium support plan. If the customer purchases 2 years of support in advance, I offer a 50% discount.

Using Gravity Forms Instead of Infusionsoft Webform

You can view my demonstration form at https://www.equalserving.com/useful-tools/infusionsoft-product-bundle-test/

I used Gravity Forms’ Product Pricing Fields to configure the form. The top field is a Single Product field with the quantity disabled (because this is presumed to be a digital product – there is no need for quantity). The installation, ebook and support fields also use a Product Pricing Field with Radio Buttons field type.

I included a hidden field on the form that contains a promo code for the multi-year support discount. This hidden field is unnecessary as you can configure purchase discounts in Infusionsoft that do not require a promo code but I included it anyway for this example.

Lastly, I dragged in a Total Pricing Field so that the customer could see how much the purchase was going to be before adding it to their cart.

Once the customer clicks on the button labelled “Process My Product Bundle,” the form is configured to redirect to the Infusionsoft product bundle link. Gravity Forms allows the fields of the form to be redirected to another page by clicking on the Form Settings | Confirmations. Select the Confirmation Type – Redirect; enter the Redirect URL and click the Merge Fields button to include the fields necessary in the bundle link. Below is a snapshot of my completed Confirmations screen –

infusionsoft_bundle_gravity_forms

Below is the default Infusionsoft bundle link –

https://{ifsapp}.infusionsoft.com/app/manageCart/processBundle

Below is the Redirect Query String I entered for my particular form. This field is activated when you enable the “Pass Field Data Via Query String” checkbox –

productId=35&productQuantity=1{AddOn Installation:4:value}{Taking Awesome Plugin to the Next Level - eBook:7:value}{Support:6:value}

The above query string as written will append only the values of the fields onto URL Redirect. The evaluated “raw un-filtered” Redirect URL with query string will look as follows:

https://{ifsapp}.infusionsoft.com/app/manageCart/processBundle?productId=35&productQuantity=1001

If the above was submitted, 1001 units of product id 35 would be added to the shopping cart. This, of course, is not what we want.

We must add code to ensure that only products with a quantity of more than zero (0) are added to the query string and that the parameters are properly formatted. Therefore, we must modify the theme’s functions.php file to include the following:

add_filter("gform_merge_tag_filter", "gv_filter_all_fields", 10, 4);
function gv_filter_all_fields($value, $merge_tag, $options, $field){

    if($field["formId"] == "84") {
    	if ($merge_tag == 4 && $value != 0) {
    		// Installation
    		$retVal = "&productId=39&productQuantity=".$value;
    	}
    	if ($merge_tag == 7 && $value != 0) {
    		// eBook
    		$retVal = "&productId=37&productQuantity=".$value;
    	}
    	if ($merge_tag == 6 && $value != 0) {
    		// Support
    		$retVal = "&productId=41&productQuantity=".$value;
    	}
    	if ($merge_tag == 9) {
    		// promoCode
    		$retVal = "&promoCode=".$value;
    	}
    } else {
    	$retVal = $value;
    }
    return $retVal;
}

The above function is triggered with the gform_merge_tag_filter filter. Line 4 evaluates the form id. If formId equals 84 (our bundle form), the function then interrogates the merge_tag and the value parameters. Depending upon which merge tag is passed, the proper productId is returned along with the value of the form field (product quantity). So, the above “raw unfiltered” Redirect URL with query string becomes –

https://{ifsapp}.infusionsoft.com/app/manageCart/processBundle?productId=35&productQuantity=1&productId=41&productQuantity=1&promoCode=MULT
I

Conclusion

Like everything in life and especially online, there are many ways to accomplish any one task. Using an Infusionsoft webform to create a dynamic product bundle is possible and requires no additional tools. But if you are already using Gravity Forms, and want to create a more pleasant customer experience why not put the process together using Gravity Forms?

Filed Under: eCommerce, How To, Infusionsoft, Wordpress

Take Control of Your WordPress Backups

February 3, 2014 by Michele Leave a Comment

For many years I have used CRON and shell scripts to perform code and database backups for my own site and client sites. Of course, using a CRON job usually means that the client is unable to modify the backup or the backup schedule which is fine, really, especially since the script does not require much tinkering once the code is in place. Typically, the database backup is small enough to attach to an email and automatically send to the client each day. The WordPress core, theme and plugin files are normally too large to attach to an email and require that the client download the archived backups from their server using FTP.

This last FTP step was a little too complex for one of my recent clients and I was forced to look at a plugin to control the backup process. Because this client was making use of the Google products such as Google Drive, I wanted to make use of a plugin that would copy the backups to their Google Drive.

The first plugin I downloaded was Google Drive for WordPress. This plugin does exactly what is says it will do – back up your entire WordPress installation including your database to Google Drive. I found that while this plugin could be configured quite quickly, it was lacking some features that I expected:

  • All backups are copied to the root directory of your Google Drive account. I found this failure to be quite limiting. Who wants to have all your backups listed in the root directory of your Google Drive account. Especially, if you should be maintaining backups for multiple sites.
  • The email notifications are so terse that it requires close scrutiny to determine which site was backed up and whether it was successful. The subject line of the email reads only “Backup.”

The second plugin that I tested was the very popular Updraft – WordPress Backup and Restoration. With its solid features, I understand why over a half million people have downloaded it. You can back up your WordPress installation to among other repositories Amazon, Dropbox and Google Drive.

The Updraft plugin does what I expected from the first plugin I tested – it does allow you to backup your site to a folder within your Google Drive account. You can easily maintain separate folders for all the sites that you want to backup thereby keeping files out of your root drive. The notification email clearly displays the site that has been successfully backed up or not. By default the name of the website is included in the backup name making it very easy to find the backup within your Google Drive folder.

The backup is performed in separate steps to generate multiple files – database, themes, plugins, uploads and other files outside the WP core. The WP core files are not backed up.

Additionally, the Updraft plugin allows you to download the backup to your desktop from the Updraft admin panel right within WordPress. You can also restore the backup through the Updraft admin panel.

If you are running a multisite installation of WordPress, Updraft published a premium addon which allows the super admin to backup all the sites within the network. Otherwise, you must configure the Updraft plugin for each of your separate sites.

I was pleasantly surprised by the robust features of Updraft and will probably include the plugin in my future WordPress projects.

If you are not routinely backing up your site, I ask you to please take a look at this Updraft plugin and install it on your site before you regret your decision.

Filed Under: Wordpress

What is the best eCommerce plugin for Digital Downloads?

January 23, 2014 by Michele

The other day, I was asked if I could suggest a shopping cart solution for a site whose owner was selling only one single eBook in PDF format.

My immediate response was WooCommerce which always ranks as one of the Most Popular plugins on WordPress.org week after week or WP e-Commerce with more than 2.5 million downloads.

Both of these eCommerce plugins offer the ability to sell digital downloads. When a customer completes their transaction via a successful payment using Paypal or credit card, they are redirected to a thank you page that lists their purchase details which includes links to the downloadable files.

Because most eCommerce packages are handling physical goods, the plugin must be configured for inventory, shipping and sales tax before you can begin selling a product online.

WooCommerce and WP e-Commerce are both feature-rich plugins with extensive APIs that enable you to customize the shopping experience for your customers. Remi Corson has a list of snippets that can be added to your functions.php to extend the functionality of your WooCommerce plugin.

But for a website that is selling one or two digital downloads, the above eCommerce plugins may perhaps be overkill. So, I took a look at Easy Digital Downloads. I was pleasantly surprised at how easy it was to configure the plugin and I was up and running with a test product within 7 minutes.

Like the WooCommerce and WP e-Commerce the customer is redirected to a purchase confirmation page that lists the details of the purchase with links to the downloadable digital products.

An added benefit using the Easy Digital Download is that you can insert a shortcode purchase link into any of your pages or posts on your site. The shortcodes can be easily copied from your list of Downloads on your Admin Dashboard ({website_url}/wp-admin/edit.php?post_type=download) as pictured below.

easy-digital-downloads

Via the Settings panel you can restrict the number of times a customer can download the product or leave the default setting for an unlimited number of downloads. You can also set the download link to expire after a certain number of hours. The default setting is 24 hours and this can be set on a per product basis.

I think that the Easy Digital Downloads plugin for WordPress is definitely worth a look especially if you are selling just one or two digital products. It can’t be beat for quick installation and ease of use.

Filed Under: Digital Downloads, eCommerce

1ShoppingCart.com API Error Codes

November 16, 2013 by Michele

The 1ShoppingCart.com API returns error codes that will help you troubleshoot the configuration of the WordPress Plugin for 1ShoppingCart.com.  They are errors 2040, 4010, 4110, 4112 and 5000.

These errors will appear in the WordPress Dashboard when you try to Build or Rebuild your product table.  Or you may receive an email alerting you of the error when your WordPress installation tries to refresh your cache.

The error code, its meaning and what actions you need to take to correct the problem are listed below:

Error CodeDescriptionAction
2040No data foundThe plugin incrementally queries your 1ShoppingCart.com product catalog for changes. If there have not been any changes, 1ShoppingCart.com returns an error code 2040 No data returned. There is no need for action or alarm.
4010Not authorizedThe Merchant ID that you entered does not have permission to use the 1SC API. Please check that you entered your Merchant ID correctly on the plugin settings page. If you know you entered it correctly, please contact 1SC support to ensure that your account is configured correctly. http://www.1shoppingcart.com/customer-support
Not authorized to view product detailsThe Merchant ID that you entered has permission to use the 1SC API but does not have permission to view the product details. Please contact 1SC support to ensure that your account is configured correctly. http://www.1shoppingcart.com/customer-support
4110Invalid merchant keyThe Merchant Key that you entered is invalid. Please check that you entered your Merchant Key correctly on the plugin settings page. If you know you entered it correctly, please contact 1SC support to ensure that your account is configured correctly. http://www.1shoppingcart.com/customer-support
4112Invalid merchant idThe Merchant ID that you entered is invalid. Please check that you entered your Merchant ID correctly on the plugin settings page. If you know you entered it correctly, please contact 1SC support to ensure that your account is configured correctly. http://www.1shoppingcart.com/customer-support
5000Server ErrorVerify that you entered your Merchant Key and Merchant ID correctly – one or the other was likely incorrect. If both the Merchant Key and Merchant ID are correctly entered, please contact 1SC support to ensure that your account is configured correctly. http://www.1shoppingcart.com/customer-support

Filed Under: 1shoppingcart.com

Fake It Till You Become It

August 7, 2013 by Michele

I watched Amy Cuddy’s TEDTalk the other night and it seems it really struck a nerve as I have thought of it a number of times since. I’ve told a few people already to watch it in the hopes they could draw some inspiration from it.

Her findings as a researcher of body language specifically as it relates to women is fascinating. There are so many times, I’ve seen women get shut down in meetings by their male colleagues because their demeanor was too submissive even though their idea was better.

I know the video has gotten over 6 million views. I hope it gets 12 million more!

https://www.ted.com/talks/amy_cuddy_your_body_language_shapes_who_you_are

Filed Under: women in business

Infusionsoft: Redirecting After Submitting Web Form

July 19, 2013 by Michele

Update 3/6/15: I was asked today if this code would work with values from a dropdown listbox. I said it would but once I looked at the values within the dropdown listbox I saw that my approach had a flaw. I tweaked the code.
You can see it in this newer post.


I’ve seen the question asked more than once recently – “I’m using Infusionsoft and I want to redirect my site visitors to specific pages on my site depending upon the options they select in a Web Form, how can I do this?”

My clients are predominately WordPress users and I wanted to see how easy it would be to create a page router without the use of a plugin. Ideally, I wanted a shortcode that would be simple to use and easy to remember. Something like –

[esifs_router field_name="inf_option_MyInterest" 213="http://clients.equalserving.com/loreen/infusionsoft-router/213-kayaking" 215="http://clients.equalserving.com/loreen/infusionsoft-router/215-biking" 217="http://clients.equalserving.com/loreen/infusionsoft-router/217-hiking"]

Where the field name (inf_option_MyInterest) that I want to interrogate is named and the values of the choices (213, 215, 217) and the pages I want visitors redirected to follow in a list.

For my example, I created a simple Web Form at https://fr381.infusionsoft.com/app/form/page-router. I set the Thank You page for this form as a Web Address -> http://clients.equalserving.com/loreen/infusionsoft-router/

If you take a peek at the source code of my Web Form, you will notice that each of the radio button options has a unique value assigned by Infusionsoft. The field name is inf_option_MyInterest and the values are 213 for Kayaking, 217 for Hiking and 215 for Biking.

<div class="infusion-field"> 
   <label for="inf_option_MyInterest">My Interest *</label> 
   <div class="infusion-radio"> 
      <span class="infusion-option"> 
         <input id="inf_option_MyInterest_213" name="inf_option_MyInterest" type="radio" value="213" /> 
         <label for="inf_option_MyInterest_213">Kayak</label> 
      </span> 
      <span class="infusion-option"> 
         <input id="inf_option_MyInterest_215" name="inf_option_MyInterest" type="radio" value="215" /> 
         <label for="inf_option_MyInterest_215">Bike</label> 
      </span> 
      <span class="infusion-option"> 
         <input id="inf_option_MyInterest_217" name="inf_option_MyInterest" type="radio" value="217" /> 
         <label for="inf_option_MyInterest_217">Hike</label> 
      </span> 
   </div> 
</div> 

The goal is to have my site visitors redirected to a page that is very specific to their selected interests. Therefore, I have created three different pages. They will be redirected as follows:

  • If you select Kayaking, the value is set to 213 and you will be redirected to http://clients.equalserving.com/loreen/infusionsoft-router/213-kayaking
  • If you select Hiking, the value is set to 217 and you will be redirected to http://clients.equalserving.com/loreen/infusionsoft-router/217-hiking
  • If you select Biking, the value is set to 215 and you will be redirected to http://clients.equalserving.com/loreen/infusionsoft-router/215-biking

To enable the use of such a shortcode requires that I add a function to my WordPress theme’s function.php file. I’ll explain what the following code does line by line below.

add_shortcode('esifs_router', 'esifs_router_function');

function esifs_router_function($atts, $content = null){
	if (isset($atts["field_name"]) && $atts["field_name"] != "") {
		$field_name = $atts["field_name"];
		if (isset($_GET[$field_name]) && $_GET[$field_name] != "") {
		$value = $_GET[$field_name];
		$url = $atts[$value];
	    $string .= '<script type="text/javascript">';
    	$string .= 'window.location = "' . $url . '"';
    	$string .= '</script>';
	    echo $string;
	}
}
  • Line 1: Associates the shortcode [esifs_router] with the function esifs_router_function. WordPress now knows that when it sees the shortcode [esifs_router] in a page or post, it will call the esifs_router_function. For more on WordPress shortcodes, you can read Smashing Magazines guide on shortcodes.
  • Line 3: passes the attributes from the shortcode to the function esifs_router_function.
  • Line 4: checks to ensure the the field name is set in the shortcode and not empty.
  • Line 5: tells the function what field name I want to check for redirection. In my case, it is the field name inf_option_MyInterest.
  • Line 6: checks to ensure that the field name is being passed to the page by Infusionsoft and that the value is not empty.
  • Lines 7: assign the value of the option the visitor selected to the variable $value.
  • Lines 8: assigns the appropriate URL to the variable $url.
  • Lines 9,10,11: Will output a small piece of Javascript to the page that will redirect the visitor to the page you defined in the shortcode.

Like everything, there is more than one way to do it. This is what I came up – it would be interesting to know what others would do.

Filed Under: Infusionsoft, Wordpress

Throw Out Your Fax Machine

June 17, 2013 by Michele

It’s summertime, your on vacation and a colleague or your realtor need a document signed immediately but you are on the beach and it’s a long walk to the hotel’s business center. Or you are out on a fishing trip nowhere near a fax machine.

Wouldn’t it be nice if you could sign and send the fax back all using your iPhone or Andriod? Well, now you can using HelloFax and if you follow this link, https://www.hellofax.com?ref=e6c07647, you’ll be able to send 5 pages for free just for signing up and trying it out.

Go ahead, do yourself a favor – you know you are going to need it – Hello Fax

Filed Under: Resources

  • « Go to Previous Page
  • Go to page 1
  • Go to page 2
  • Go to page 3
  • Go to page 4
  • Go to page 5
  • Go to page 6
  • Go to Next Page »

Primary Sidebar

Theme Of The Month

StudioPress Theme of the Month

Recent Posts

ActiveCampaign Last Order Details

I have a B2B client, who wants to remind customers to place an order if they have not ordered in the last 35 days. … [Read More...] about ActiveCampaign Last Order Details

Missing Indexes and/or Missing Auto_Increment Attribute

When migrating a Wordpress installation from one server to another, it is important that you verify the integrity … [Read More...] about Missing Indexes and/or Missing Auto_Increment Attribute

How To: Configure Our WooCommerce ActiveCampaign Plugin

Before we begin to configure our WooCommerce ActiveCampaign plugin, please know ActiveCampaign has four (4) … [Read More...] about How To: Configure Our WooCommerce ActiveCampaign Plugin

Sales Cadence ActiveCampaign Automation

I have been using ActiveCampaign for a few years and I am pleased with the functionality and the appealing price … [Read More...] about Sales Cadence ActiveCampaign Automation

Coda Document – The New File Type

Coda is a new document type that combines the functionality of word processing, spreadsheets and databases into one … [Read More...] about Coda Document – The New File Type

Footer

Stay Connected

Stay up to date with the latest news, product announcements, and more by signing up for our email newsletter. Don't forget to follow us on your favorite social sites as well.
  • Email
  • Google+
  • LinkedIn
  • RSS
  • Twitter
  • YouTube

Contact Us

EqualServing

46 Amethyst Rd
Palmyra, VA 22963

727-490-7443 https://www.equalserving.com/wp-content/uploads/2013/11/eslogo_300x60.png $$
Email :: Plugin Support
  • ActiveCampaign
  • How To
  • WooCommerce
  • WordPress Explained
  • Resources and Recommendations

Copyright © 2021 ยท Web Development :: EqualServing.com on Genesis Theme Framework
» You will find affiliate links on this site. When we find a company or individual that consistently delivers a high quality product or service, we will become an affiliate. «