SMX 2013 Initial Feedback

by Amit Ramani/ @anterikinc

SMX Initial Feedback

This was my first SMX conference. In fact, it was my first technical conference of any kind. While $2400 is quite a steep price to pay for the full conference (including the workshop and all sessions), the idea is that you get upto speed on the latest happenings in the SEO, PPC, Social Marketing world. That I think is the perceived goal of SMX.

Towards that goal, I think SMX fared reasonably well. The sessions span a wide variety of different topics from SEO, PPC, Social Media, Semantic, Entity Search. However, the depth of these sessions is questionable, as is the quality of some of the speakers.

The Good

I found the following sessions and workshops the most useful.

  • Bruce Clay SEO Workshop
  • Learn with Google Sessions
  • What are the most important Page Ranking Factors?

Bruce Clay SEO Workshop

The best part about the conference for me was the full-day SEO Workshop by Bruce Clay Inc. In all honesty, the workshop delivers on its promise. Bruce Clay spoke about SEO like second nature, he has the smarts, he keeps up with the industry and does not hesitate when faced with difficult questions. I thought the entire audience of the Bruce Clay Session engaged very actively throughout the workshop. That is always a sign that the audience is grasping at what the speaker has to offer.

SEO All In One For Dummies is included in the class as is the SEO Training binder. Bruce goes over the important aspects of SEO, answers even the most simplest of questions. Add to that, his staff is very pleasant. (shout out to @ChelseAdams)

Learn with Google Sessions

This was kind of unexpected as it was not on the official agenda. In my opinion, these sessions were a hit. Not only was their presentations more clear, it was coming straight from the source. No ambiguity and guesswork whether or not to follow their suggestions and advice. I can not say the same about some of the other speakers in the smaller sessions.

The Bidding Strategies for PPC session by Google was especially useful in that it focused on how to get the most of your campaign if you are squeezed by budget limitations.

Another very useful presentation was how to get your site working smoothly across multiple devices. The speaker presented clear and specific tips instead of generic advice., like “make sure it works on iPads”.

I will post more specifically about each of these sessions with the key takeaways for me. In the meantime, cheers to the organizers of SMX and all the contributors. It has been a very enjoyable experience and I will return in 2014!

Did you attend SMX 2013? What are your thoughts?

ecommerce Wordpress

Evaluation of JigoShop as WordPress e-Commerce platform

So far, I have had some time to look at JigoShop for evaluation as an ecommerce plugin for WordPress. Coming from a setup where we use dedicated CMS’s for e-commerce, the idea of a plugin seems a little too thin, relatively speaking. i.e. maybe the plugin does not have all the features that a full scaled CMS that is geared towards ecommerce use.

I have found that last part to be mostly untrue, since JigoShop supports a lot of features, right out of the box. It also has a variety of secondary plug-ins for SEO, email etc that make it powerful.

Looking closer at the JigoShop code, I realize that internally it does not use separate tables dedicated to the ecommerce functionality. Instead, it embeds and extends the core WordPress database tables for tailoring it to WordPress. At this point, I am not sure what are the advantages and disadvantages of this structure.

I will continue writing about whatever I discover about the different eCommerce plugins like WordPress.

If you have any feedback, feel free to comment below.


WordPress: JigoShop Conflict of “From” header

Being new to WordPress, I had another challenge this week. It appeared that no matter what “name” was entered by the users on a form, the email sent (as a result of the form submission) was always “From : <Blog Name>” instead of “From : <Actual Name of User>“. In fact, all emails (regardless of plugin) would originate “From: <Blog Name>”.

Initially, I assumed the problem was simple in that the form was somehow hard coding the “From” field and it was just a matter of finding the right piece of code within the Contact Form 7 plugin and replacing it.

After 3 hours of the debug-code-test-repeat cycle, I was nowhere closer to solving the problem. I am not a WordPress guru so I was afraid of delving into the WordPress core code. So I started looking through the code for Contact Form 7 plugin. I placed debug statements (PHP error_log) on the interface between Contact Form 7 and the WordPress core code. Specifically, we are talking about the WordPress “wp_mail()” function.

You can specify headers to the “wp_mail()” function, so I verified that Contact Form 7 was sending these correctly. That meant the problem was NOT within Contact Form 7.

One thing within the WP core code confused me: how and what did the filters do? The wp_mail() function was invoking the filters ‘wp_mail_from_name‘ and ‘wp_mail_from’ before calling the core PHP API to transmit the email. Instinctively, my next step was to look for references to any such filters by any plugins. I found quite a few references to this ‘wp_mail_from_name’ filter. While all other plugins seemed to be using the filter only for their exclusive purposes, one plugin, notably JigoShop, was adopting a different route. The call to “add_filter(‘wp_mail_from_name’, ….)” was not matched by a complimentary call to “remove_filter()”.

That means the WordPress core code would always be setting the header field according to the ‘wp_mail_from_name’ function handler set by JigoShop.

Bingo, I had found the problem! Sometimes, you get so excited about finding the problem that you absorb it in all with pleasure. Its an elated feeling to have found out the answer after several hours of debugging.

A couple of days later, I still do not know what is the correct resolution to this problem. I have posted on the JigoShop forum, seeking a solution. So far, it seems a few other folks have encountered the same issue previously.

I also posted on the WordPress forum for both Contact Form 7 plugin and the JigoShop plugin. I hope to hear back from some experts on what should be the proper resolution.

If I am understanding correctly, JigoShop should only nestle calls to ‘wp_mail()’ between ‘add_filter(‘wp_mail_from_name’…)’ and ‘remove_filter(‘wp_mail_from_name’)’. This way, the JigoShop emails are still sent from the correct “From” field, while still not affecting the rest of the plugins.

Here is my post on the Contact Form 7 plugin forum at WordPress and here is my post on the JigoShop Plugin forum at WordPress. Last, here is my post on the official JigoShop forum on the site.

Update 02 August 2013

I just heard back from one of the development team members at JigoShop. The good news is that they did acknowledge the conflict. More good news is that the fix is simple, just as I had proposed above i.e. to have ‘add_filter()’ and ‘remove_filter()’ around each call to ‘wp_mail()’.

The official fix will be included in the next JigoShop release.

If you were waiting for bad news, sorry to disappoint you…there is none!


WordPress as e-commerce platform?

Being new to WordPress, I would like to gather some feedback as to how well suited is to e-commerce applications. I am primarily interested in small business websites that require payment gateway integration and shipping providers (UPS, USPS, FedEx).

At a very minimum, Paypal and must be supported. Quickbooks POS integration and synchronization would be an added plus.

Still doing preliminary research on WooCommerce, which is a plugin for enabling e-commerce functionality within WordPress. I will post my findings.

In the meantime, if you have suggestions, please feel free to comment.