Dont make variations database requests calls when variations aren't being used
Add check to see if variations are defined and used, when they are not defined and used don't make calls through WordPress for variation terms unless working inside the admin area. Avoids lots of small empty queries.
Add checks to variation class to avoid walking off the end of internal arrays
@JustinSainton along the same lines as the PR we did last night, this PR avoids many similar small unnecessary database calls when product variations are not being used. I recall having mentioned it to you a while back. In my testing it avoids about 10% of the database calls when measured against a full crawl of a sitemap.
You might want to consider it for the old theme engine branch.
If you do want to include it for theme engine 1.0, I can also do a like PR for theme engine 2.0.