Blog

Shareaholic 2017 Data Report
Notable findings include search volume outperforming social for the first time in 3 years. Facebook also had a 12% reduction in usage for 2nd half of 2017 compared to 2nd half of 2016.

New Google Search Console
Free tools to make sure that Google is properly indexing your site. If you're not using this along with Google Analytics, you're missing out!

Chrome will Mark Non-HTTPS as Not Secure in July 2018
This is a big deal because over half of internet users browse with Chrome.  If you don't have SSL enabled for your site yet, This email address is being protected from spambots. You need JavaScript enabled to view it.  today to get this resolved.    

A Thorough Migration Checklist
This is a great article to show all of the moving parts when changing domain names.

Keyword infringement: Edible Arrangements files $209M trademark suit against Google
Ouch!  Apparently, you can only BID on trademarked keywords using Google Adwords.  You can't use the trademarked keyword in your actual ad.  

1. MOBILE-READY DESIGN

From template or custom artwork

2. CUSTOMIZABLE URL’s

Custom landing pages allow for new content to easily be found

3. CLIENT CONTROL

Open source (no vendor lock-in), customizable, manage from any browser Compatible with almost any hosting service

4. NO CONTRACTS

Hourly pricing, 48-hour support ticket response

5. FIXED-COST PROJECTS

No billing surprises

 

I needed something that would allow a client to provide name, email, invoice number, and amount.  All of the solutions I could find were either for the older version of Webform, or they were too cumbersome... too many modules required... not enough simplicity and control.  Many of the solutions would only allow for "donations" of fixed amounts. 

My solution was to adapt the solution found here (which was written for a specific scenario, also using the older version of Webform), adapt it for my needs, and recode for Webform v4.  

Note that this solution requires that you enable the "PHP Filter" module, which is a potential security issue if configured incorrectly.  

I was recently diagnosed with Lyme disease, and have since been researching Lyme disease identification, treatment, diet, managing stress, and even treating canine Lyme disease with vitamins and supplements - humans, too!  

Here is a link to the guide that I posted on our local community website:
Pennsylvania Lyme Disease Treatment Guide

Please share!  

 

[Edit 12/15/17]
I've started blogging about my own experience with Lyme Disease on my personal site.  

I recently had to come up with a way to track a client's Drupal site, using the Webform module, from within Google Analytics.  Since the Webform module generates the "submit" button automatically, there is no easy way to include the "onClick" tracking code provided by Google into the form:

onClick="ga('send', 'event', { eventCategory: 'Legacy Event Signup', eventAction: 'Sign Up', eventLabel: 'Legacy Signups', eventValue: 1});"

My solution was to write a short "hook" script in the template.  To incorporate into your site, you need to modify this file:

/sites/all/themes/YOURTHEME/template.php

Web host agrees to pay $1m after it’s hit by Linux-targeting ransomware

What would you do if YOUR computer were hit by this type of ransomware?
What if your computer were stolen?
What if your building burns down?  

The advantage of using an SSL certificate with your website is the ‘green lock’ symbol that visitors get when browsing your site:

secure

Rather than this:

not-secure

For years now, Google has been encouraging all websites to switch from HTTP to secure HTTPS (SSL).

Editor's Note:
I'm posting this article because it goes into a fair amount of detail about how a web site's hosting account and how its various parts are configured play an important role in handling large spikes in traffic.  Most of my clients never encounter this type of a problem.  It's always good to be ready.  If you're not sure if your hosting account is set up to handle large bursts in traffic, let me know, and I'll put together some recommendations.  For most folks, enabling caching is going to be sufficient.  Others might appreciate the extra protection provided by a service like CloudFlare.

Millions relied on Space City Weather—here’s the configuration that weathered Hurricane Harvey.

HOUSTON—I had enough to worry about as Hurricane Harvey plowed into the Texas Gulf Coast on the night of August 25 and delivered a category 4 punch to the nearby city of Rockport. But I simultaneously faced a different kind of storm: an unexpected surge of traffic hitting the Space City Weather Web server. This was the first of what would turn into several very long and restless nights.

I recently switched a client's site from HTTP to HTTPS (SSL encryption) and needed to come up with a solution to their "social sharing counts" resetting to zero.  This is not a flaw or bug, it's working as it was intended.  

Here is how it works.  When you share a page via social media, it uses its URL:
http://www.yoursite.com/the-page-you-are-sharing

When you switch to SSL / HTTPS, your URL changes, similar to if your domain name changes altogether:
https://www.yoursite.com/the-page-you-are-sharing

With the new URL, you lose all of your social sharing counts, a source of major pride (and potential profits).  

My wife and I have been avid iPhone users for a decade.  We recently switched over to Android and I wanted to write up this post to share my thoughts and findings.  

First, Why?

We recently learned about these new Huawei phones and did some research on our own.  We wound up purchasing matching Huawei Honor 8's.  First, the specs are great.  They stand up spec-per-dollar wise when compared to iPhone 6s, which was going to be the iPhone that we went with if we stayed in Apple's ecosystem.  The iPhone 7 doesn't have a headphone jack and that was a deal breaker for us.  The Honor 8's have a 'full' 1080-resolution screen squeezed into 5.2 inches.  This basically means that the screen is a little larger than our old phones, but the clarity is amazing.  Huawei has openly stated that they intend to compete with Apple and Samsung, head on.  I personally believe they will be successful.  

The Joomla 3.7 release added new features AND 8 (eight) low-level security patches.

What they should have done, was to release 3.6.6 with all of the security patches as a ‘security’ release.   Then, after the dust settles, release v3.7.0 with the new functionality.  They combined both “security” and “new functionality” into the 3.7 release.  To me, it seems they should have pushed the security patches into 3.6.6 and then the new features into 3.7, rather than a combination. 

The result is a scramble in the Joomla community where everyone rushes to install version 3.7 because it contains security patches.  Then, another scramble to install 3.7.1 because 3.7.0 had a new security issue.  It seems like a racket, no? 

This article was originally posted on SearchEngineLand.com

Google often provides useful information to the SEO community, but columnist Nate Dame argues that ultimately, the company's advice is in their best interest, not yours -- so make sure you understand the nuances.

Last month, Google released a video detailing best practices for hiring an SEO company, and it is positioned to become the go-to guide for hiring an SEO. After all, who better to tell companies what they should look for in an SEO than the operators of the world’s most popular search engine?

Starting in January 2017, any website with a "login" form visible (e.g. Client Logins, Shopping Carts, etc) will show an "insecure" message in the browser's address bar if the site does not have an SSL certificate properly installed and configured.

Particularly for my clients that are security-minded, it's important to consider how to proceed with this information.  Some of my clients already have SSL certificates running on their sites, even ones that don't process credit cards.  For clients who already process credit cards, their sites already have the necessary SSL encryption certificate (https), so this is a non-issue. 

I had been researching this issue for a client and wanted to share it with everyone.  My client and I had been discussing the ability to collect recurring payments via PayPal WITHOUT requiring the user to have an actual PayPal account. 

I recently received an email that is referenced in this forum thread.  I was going to post my response on this other site but it tried to get me to sign up for a premium plan in order to post a response.  Instead, I am posting it here:

Greetings from the beautiful Pocono Mountains!  As we get ready for winter, we want to share a few of our recent projects, along with some ways to make your website more effective.  

In this issue:
Another very happy client (recent testimonial)
Sites that generate ad revenue
Sites that build communities
PDF Form Submissions

As always, I appreciate referrals!  

Thanks,
-Nate

Solution after finding myself unable to print multiple lines on my Quickbooks Invoices.  Seems like there are a lot of other people who posted similar problems and Intuit was fairly unresponsive.  (Here's a similar one)  Hopefully this video will help shed some light on the issue.  I almost wound up typing an amount and hourly rate for EVERY line on my invoices, even though only 1 line per invoice was actually required.  Yikes! 

I noticed that after installing the Joomla 3.6.4 security patch, the background color of the /administrator control panel login screen changed.  It seems that with today's release of Joomla 3.6.4, and ease of which the exploit can be executed, it's really bad timing to make it so easy for hackers to see whether or not a site has been patched.  This latest Joomla exploit allows for a person to do two things:

I just encountered an issue after upgrading a client's site to Joomla 3.6.4.  I was presented with the following error message on both the front end and back end of the site:

Error displaying the error page: Illegal mix of collations (utf8_unicode_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation '=' SQL=SELECT id, home, template, s.params FROM #__template_styles as s LEFT JOIN #__extensions as e ON e.element=s.template AND e.type='template' AND e.client_id=s.client_id WHERE s.client_id = 0 AND e.enabled = 1: Illegal mix of collations (utf8_unicode_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation '=' SQL=SELECT id, home, template, s.params FROM #__template_styles as s LEFT JOIN #__extensions as e ON e.element=s.template AND e.type='template' AND e.client_id=s.client_id WHERE s.client_id = 0 AND e.enabled = 1