Show Posts


Messages - Geoffrey

Pages: 1 2 3 [4] 5 6 ... 11
46
Customization help / Re: Custom layout; different layouts for GS1 & GS2
« on: October 04, 2017, 10:11:50 PM »
Hello-o.

Can anyone offer an explanation as to why my new GS1 Layout was empty? 

Can anyone say how to assign a new custom layout to a new custom page and actually have it work? 

Maxman. The Maxster.  Maxorama!  Maximum Maxage!!

what up?

47
SEO / Re: CSS Management, pageload speed, & BLOAT
« on: October 03, 2017, 03:33:20 PM »
Thanks for the advice. 

It's good advice.

For the benefit of future non-tech readers, I guess I'll add a few more comments.

If you make an effort to clean up CSS, your first step should be to backup and archive the full rule set.  You may need it if the cleanup breaks your site, and you may need it for future site mods.  It's not difficult to revert back to the full rule set.  Just delete the cleaned set, upload the full set, and edit head.tpl as needed.

Not to be argumentative, but a cdn is a geographically dispersed set of servers that attempts to load content to users faster by choosing servers closer to the user's location from which send all or parts of your content.  At nearly lightspeed, chopping 3000 miles off the content's journey will save less time than significantly reducing the filesize of the content.  I think cdn's must be a great idea for huge sites, but i see little potential benefit for small sites. 

If you're on a fast server already, this part of the job is already done. 

Optimize thumbs is a good idea.

Writing good content is essential. 
I worked hard to write good content, so i hope Basara's suggestion is more a general one, and not specifically directed at my site. :-)

If you choose a fast host, write good content, and optimize all images, and if everything else is running properly, your site will load fast. 
Mine does.  It's really pretty fast.

But if you want, you can also cut your css file load in half, combine and minify, and you will be even faster.  Does it matter?  Some say yes, some say no.  If you hack the css up, you risk losing responsive features or breaking your site.  That is why my original suggestion was to take a conservative approach. 

The uncss grunt was written by a google executive.  It has selectable levels and filters.  It is widely used. You can apply ignore blocks to all @media rules, etc, etc.  So if you spend just a little time during setup, it is quite possible to clean css without breaking AC, and it is always possible to revert. 

Closing comment: Basara gave good advice. 

 

48
Customization help / Re: Custom layout; different layouts for GS1 & GS2
« on: October 03, 2017, 03:15:51 PM »
OK, I had partial success, but it doesn't work. 

My db prefix is "bob".  My template extension is "joe".

In bob_layouts, I inserted 2 new layouts:
9, default, GS1 Layout, 1
29, joe, GS1 Layout, 1

In bob_pages, I inserted 1 new page:
6,0, checkout/guest_step_1

In bob_pages_layouts, I inserted 2 new relationships:
9, 6
29, 6

So basically I made a new layout and new page-layout association for both the default and joe extensions. 

Then, in root/extensions/joe/layout.xml, I copied the entire set of definitions for the Checkout Pages layout ( from <layout> thru </layout> ), and I pasted it just below the Checkout Pages section, then edited 3 lines on the paste as follows, then saved the file:
<name>GS1 Layout</name>
<controller>pages/checkout/guest_step_1</controller>
<name><![CDATA[GS1 Layout]]></name>

Then I cleared cache for the Configuration and Layouts & Blocks elements. 

The new layout "GS1 Layout" now appears in the Layouts dropdown menu of my template extension, but I have 2 problems:
The new layout only has 1 feature: Content Area.
My guest_step_1 webpage is still using the Checkout Pages layout. 

I think the next steps will probably be to create new pages and specific layout associations for all of my other checkout pages,
and then perhaps to remove the original generalized Checkout Pages rows from the 3 different tables,
but before I do that, I would like to be able to see the full set of fields in my new GS1 Layout, not just the Content Area field.

What else do i need to do so that the new GS1 Layout has a full set of block fields?

Is there another layout.xml file somewhere?  I searched but cannot find one. 

Once I get a complete set of block fields in my new layout, do i need to do something else to assign specific layouts to specific checkout pages?

Thanks. 

49
SEO / Re: CSS Management, pageload speed, & BLOAT
« on: October 03, 2017, 03:19:51 AM »
Hi, thanks for the feedback.

You make an important point that people should consider. 

I'm using a template extension, so the only css files I ever touch are the files in the extension folders.  I do not edit css files in default template folders. 

However, you can break the responsive capability either way. 

A few weeks ago, I used FireFox DustMe extension to evaluate my site.  Mostly what i learned: my site uses relatively few rules from bootstrap and onebyone css files, and almost none from font-awesome css file.  These three files account for about 70% of the total css load.  So if I cut the unused rules out of them, my total css load could be cut in half, maybe more. 

The css load is the last thing standing between me and a "fast site" score from Google. 

If I can try it local and test it for responsive function, no harm done. 

There are a lot of smart people in the world spending a reasonable amount of time discussing how to cut the bloat out of css boilerplate like bootstrap and font-awesome.  Who am I to say they are wasting their time?

As you know, I'm not a developer, so I think developing a template from scratch is not a better approach for me. 

50
SEO / Canonical urls differ from native navigational urls
« on: October 03, 2017, 03:02:08 AM »
I had another thread about this in General Support, it got locked. 

If your product page url looks like this: domain/category/product,
you may notice that the AC generated canonical url in the head section looks different: domain/product.

Reasonably, you can't stop a bot from crawling both sets of product-page urls, especially if the canonical url specified in the head doesn't match the native url that results from navigation.   

This means a bot will catalog 2 different urls for each product page.  From the bot's perspective, that's two different links to identical content, or "duplicate content". 

My solution: change the code so that the AC-specified canonical url matches the native url.

Method 1.2.10 -
root/storefront/controller/pages/product/product.php
About line 170, change
'href' => $this->html->getSEOURL('product/product', '&product_id=' . $product_id, '&encode'),
to
'href' => "https://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]",

Method 1.2.11 -
root/storefront/controller/common/seo_url.php
About line 121, change
'href' => $url
to
'href' => "https://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"

I have a small site, only 3 levels deep at any product page.  This mod works for me.  There are probably other considerations for larger sites. 

It's a core mod.  Keep a record of core mods so that you can rewrite them after system updates. 

51
SEO / Re: CSS Management, pageload speed, & BLOAT
« on: October 03, 2017, 02:45:02 AM »
Follow-up:

grunt is a task performing app.

node.js is a js runtime environment you can install on a pc and use via command prompt.

Xenu's Link Sleuth is an old broken-link finder app that also spits out a sitemap if you want. 

grunt-uncss is a cooperatively created grunt task suitable for cleaning the css file for an html document.

grunt-contrib-cssmin is a grunt task that minifies css.

With node and Link Sleuth installed, you can create a sitemap of all site links, reformat the map into a url list suitable for grunt, set some limiting parameters for uncss, load the url list into grunt, designate target css files, and then run a grunt task that will clean out unused css rules and then output a minified file.

Two considerations:

1 - test your responsive functions after a cleanup.

2 - the vast majority of unused css in an AC site will be in the bootstrap and font-awesome files.  So if you tell grunt-uncss to ignore the other css files, then it will clean only bootstrap and FA.  This will cut your css filesize in half while minimizing the threat of nuking css rules that you actually need. 

There are two possible approaches to item2 above:
A - Target all css files, ignore all css files except BS and FA, then let grunt clean and minimize the batch. 
B - Target only BS and FA, let grunt-uncss clean them.  Then batch the cleaned BS and FA files with the other css files, and run another grunt task to combine and minify them. 

I haven't done this yet.  Maybe next week.  I will probably try a couple of different iterations, conservative vs. aggressive, and test to see what breaks.
 
I think my goal will be to do a big clean-up one time, archive the cleaned individual css files locally, make future edits to these files on a local site that runs on the individual files, combine and minify when finished with changes, and upload the new minified file to live server. 

Info:

i.   https://wireflare.com/blog/using-grunt-and-uncss-on-a-wordpress-site/
ii.   http://deanhume.com/home/blogpost/automatically-removing-unused-css-using-grunt/
iii.   https://github.com/addyosmani/grunt-uncss
iv.   https://gruntjs.com/getting-started
v.   https://nodejs.org/en/docs/guides/getting-started-guide/
vi.   https://moz.com/blog/xenu-link-sleuth-more-than-just-a-broken-links-finder



52
Customization help / Re: Custom layout; different layouts for GS1 & GS2
« on: October 03, 2017, 01:56:27 AM »
Hi Maxter. 

Wow, thanks for your clear explanation!  Much appreciated. 


53
Customization help / Custom layout; different layouts for GS1 & GS2
« on: October 02, 2017, 02:42:27 AM »
Guest Checkout Step 1 page shares the same layout with Guest Checkout Step 2 page. 

Custom Layouts are simple to create for Product, Category, Manufacturer, or Content pages, but not for a Checkout page. 

I would like to create a custom layout so that Guest Step 1 page can have its own layout different than guest step 2 page.

In the layout.xml file for my template extension, I added a new layout (copied the Checkout Pages section, pasted it, then gave it a new <name> and also [![CDATA... name. 

I hoped that this would show a new layout in the Layouts drop-down menu, but it didn't work. 

What else do I have to do to get a new Custom layout to show up in the Layouts menu, when the new layout is for a checkout page?

Then...

Which file do I edit to assign a new custom layout to guest step 1 page?

Thanks. 

54
General Support / Re: Problem with canonical urls
« on: September 19, 2017, 09:21:02 PM »
This seems more like a support issue than a customization issue. 

If the user enables seo urls, AC will generate a url that differs from native navigation urls, and place that different url in the page meta.

This is never not going to be a canonical problem. 

Regardless of whether the user includes duplicate urls in the sitemap, the googlebot will still discover them, because they exist.

Google says that google doesn't like duplicate content. 

Experts say that duplicate content reduces site authority. 

In the present configuration, it is not a stretch to evaluate these AC features as seo flaws. 

Solution is simple: give the user control over generation of seo-urls, to the extent that the user is able to choose an seo-url structure that matches the most common navigation url structure, and then place that url in a sitemap and tell google that one single url is the canonical. 

Then everything will be smooth like butta.

I could ask this question again on the Customization board, but I don't understand how that would change the primary dynamic, which is that one of you 5 guys is either going to answer this question, or not.  Does it really matter which board the question gets repeated on? 

Thx. 

55
General Support / Re: Problem with canonical urls
« on: September 18, 2017, 07:32:33 PM »
Hi, I'm still working on this. 

I need to know how to change the seo-url generation file

so that the AC generated seo-url is domain/category-seo-key/product-seo-key.

instead of domain/product-seo-key.

Thx.



56
General Support / Re: Critical app error - resize image error
« on: September 18, 2017, 07:25:40 PM »
Still trying to figure out what the problem is. 

The image for the Case Category displays normally.

The 2 images for the case product list page will not display. 

The 2 images for the case product pages will not display. 

Every other image on the site is working. 

The case product image files are small. 1024x1024, less than 200 kb each. 

57
General Support / Re: Critical app error - resize image error
« on: September 18, 2017, 11:18:36 AM »
1024x1024
217kb optimized.

I can open it with any viewer or any image editor software I have, just by double-clicking it, or by right-clicking it.  Nothing wrong with the file. 

All site images are 1024x1024, optimized.  Average filesize is 180kb per image. 

I have 15 product categories. 

Some of my categories have many product list images and product images, whereas other categories have only 2 product list images and 2 product images. 

This problem only occurs with 1 product category that has only 2 product list images and 2 product images.  It is my "smallest" category in terms of images.   

It was working fine on localmachine and on live,
and it is still working fine on live server. 
It just suddenly stopped working on local. 

All other categories and product lists and product images work fine. 

This doesn't seem to be an image or memory problem.  It seems to be a Category problem. 



58
General Support / Re: Critical app error - resize image error
« on: September 15, 2017, 03:15:23 PM »
Sorry. 

That was rather imprecise and careless of me.  My apologies.

The error:

Message status: critical
Date: 09/14/2017 02:00:23 PM
Number of repetitions: 46
Resize image error. File: C:/xampp/htdocs/sitename/resources/image/18/6f/9.jpg in C:\xampp\htdocs\sitename\core\engine\resources.php on line 345

The only changes I made to the site after downloading and loading my live site back into xampp local machine were:
- some small changes to css
- Sam's fix for breadcrumbs, to breadcrumbs.tpl
- relocated a free shipping badge png on product.tpl.
- change seo keys for all categories.

The error above has resulted in no image displayed on the product listing page for one the case category, and also on the product pages for each color of case.
 
On the product pages, I get "The image could not be loaded" pop-up error when hovering over the image viewer region of the page.   

The rest of the site works normally. 

14 other categories and their respective product lists and product pages all work normally. 

This is actually the first "corruption type" error I've ever encountered with AC. 

To be honest, the github conversation made it seem to me that you guys didn't fully understand it either, but I'm pretty non-tech so maybe my opinion is meritless. 

If it was a simply a matter of reclassifying an error type to non-critical, I could live with that.  But this actually broke my site.

Thanks for any solution you can provide. 

59
General Support / Re: Problem with canonical urls
« on: September 15, 2017, 02:56:12 PM »
Hi, and thanks for your reply.

Hello.

To modify php you need some skils in this area or hire a developer to help you.

This isn't really true at all. 
I have 4 core mods, one of which Abantecart (the developer, not the app) helped me accomplish with a single post. 
He just said, "put this here, and change this to this." and I was done. 

The other 3 I figured out by myself, because sometimes it's just not that hard.
 
Somewhere in the code is a url name generator that picks a few components from a library and says "the new url will be this + that". 
I need to change the code so that it says "the new url will be this + those + that". 

Adding "those" to the equation is not a monumental task.
The user-selected category keywords already exist.  They are right next door to the product keywords.   

I'm a noob.  I created and linked a pretty decent site with this app, and I published solutions to every bottleneck I hit along the way. 
I can't say for sure, but I think I pointed out some legit code issues. 

I don't know where or how to add "those" to an seo-url. 
I think it's probably pretty easy to do, so that is why I asked. 
Can you just tell me how to do it? 

Comment for noobs:
If you edit core files, your edits will be overwritten by future updates.
No problem.
Just make a detailed list of each core mod, including line number, description, and pasted copy of the code you modified.
After each update, copy and paste your modded bit back into the core files you modified before the update. 

I am not sure but think this will help you to reach 1 product = 1 page
https://marketplace.abantecart.com/google_sitemap_xml?keyword=sitemap&category_id=0

Here are the hard lessons about xml sitemaps.  No noob will know these, or understand anything about them.  None of this information is available in AC docs or on this forum. 

You want google to index your site.
You want to give the google bot a convenient roadmap to how you would like the bot to travel through your site. 
You want to have your site images on the roadmap, so that the bot picks them up along them way. 
Google may or may not index urls on your sitemap. 
Google may or may not index urls that are not on your sitemap.
Sitemaps do not control the bots behavior.  They only give the bot a starting point.

Any sitemap that is good for google is good for Bing, and Bing bought Yahoo, and in the usa, there are no other search engines that matter except facebook. 
Read on the forum about meta for facebook. 

AC does not create a sitemap in a format that google understands.
So you have to make your own. 
Google can read a sitemap in txt format. 
IOW, you can just write a few urls in a text file using the syntax and format specified by google on their single, simple page that tells you how to write a sitemap, and then submit it with their submit and check sitemap button, and Bob's your uncle!
Or, you can use any number of free or paid online sitemap generators by simply typing your homepage url into their app and then downloading the sitemap they generate. 

Warning: don't just scan over a generated sitemap and think that you see all your pages and therefore it is good to go.  I did this. 
Then I uploaded it to google and google checked it and said that it was perfect and the bot took it and ran with it.   

That sitemap was over 1000 lines.  It had all page and all image urls. 
Unfortunately, it had duplicate urls for every product page because AC generated an seo-url for each product page that did not match the seo-url natively created by navigating the site.   
So I inadvertently sent google two-each of urls for identical content, which google considers to be spam. 

In the universe of Search Engine Rankings, you want to be "high".  Not "low".
Google has undisclosed parameters by which they rank sites, in effect giving each site an "authority" ranking. 
You want to be considered an authoritative source for the kind of content you are delivering, whether it is rocket science or fidget spinners. 
If google perceives spammy duplicate content, you lose "authority", plus they don't index the content they think is spammy. 
That's what happened to me.  I'm still trying to recover.  It takes months, which can make you feel like you need to pee all the time. 
Excuse me a moment.
 
Okay, I'm back. 
There is a 3rd way to get a sitemap: buy one from the AC marketplace. 
On principal, I don't do this. 
I have developed the impression that technical support for AC is somewhat lacking, especially for non-coders.
I feel that it is often displaced by invitations to buy support from devs or via extensions. 
It is important that I qualify my comments: 
AC is offered as an Open Source app for building an ecommerce site.
IMO - the app should be usable by anyone with reasonable skills to publish a functional site. 
IMO - it's not. 
I believe there are base level functions that have problems, and these problems are not addressed or supported other than invitations to buy support. 
IMO - there are many possible "secondary level" site features that are not essential to basic site function. 
These are the types of features I will always be willing to pay for.
My hang up is that it rankles me to have to pay for solutions to base level problems that prevent proper site function at the base level.
I anticipate that the developers will disagree and I am totally cool with that.
I'm just sharing a non-tech consumer perspective. 
If I am the only non-tech consumer that has this view of AC, then I am just a fly on the wall.
But if other non-tech consumers share my view, then the probability that non-tech consumers will use AC goes down. 

So let's get back to the paid AC sitemap extension linked above.
It will generate a sitemap. 
You will still need to check the map to determine which urls it is inviting googlebot to crawl, and whether it contains multiple urls to any same page.
Then you will need to check against the meta of each product page to determine whether the page urls in the sitemap match the page urls in page meta and also whether those match the url of the actual page you would like google to consider your "canonical" (preferred) page. 
If you get all three urls (sitemap, meta, actual) to match, then google will see a clean map and clean site with no apparent duplicate content. 
This is a huge step towards high search engine rankings.
So I don't see how the implementation of a "free" sitemap from a quality provider will differ much from implementation of AC's paid sitemap, unless the paid sitemap magically accomplishes all of this without need for review. 

This takes us to AC site structure.  I perceive two problems related search engine rankings of an AC site.

The first problem is a lack of user control on how AC generates seo-friendly urls. 
I'd like to be able to control this step so that I can be sure that the app is generating seo-urls that match native urls, which will mean that only one preferred url exists for each page (nav url = meta url), which will mean that crawlers have fewer urls to identify, which means that a crawler will add a url to the sitemap that matches the nav url which matches the meta url.  This basically eliminates the problem of duplicate urls for identical content. 

The second problem is images.
AC uses a resource library to manage image content delivery.  Various different thumbs and full-size and retina images are generated and delivered by the code. 
Each of these images has a nearly identical filename, differing only in a AAAxBBB pixel size designation tagged onto the end of each filename. 
Googlebot is able to identify all of these filenames and the images to which they are attached as duplicate images.  Duplicate content. 
The support staff at GSC told me so. 
Naturally, google only indexes one of them.  Not all of them. 
All of the sitemap crawlers I have tested can generate comprehensive lists of all the site images in their various sizes. 
None of the sitemap crawlers I tested generate lists of all full-size product images.  In fact, they only provide a url for one full-size image, which is the first image displayed in the image viewer on product pages.  The rest of the fullsize images are not listed on a sitemap at all. 
So we have duplicate content, and we lack any ability to control which of the duplicate items gets indexed. 

As a result, on my site the googlebot decided that the best image to index was the thumb image for each product on the product-listing page.  This is the page that is accessed by making a selection on the category page.  It is the page that precedes the actual product page. 
Furthermore, googlebot compared my product-listing pages to my product pages, and also compared my product pages to each other, and decided that the product pages did not present different enough content than the product listing pages or from each other, so it indexed zero product pages.   And zero full-size product images. 
Ouch. 

If you sell linen aprons in 4 different colors, it makes sense that your product descriptions and keywords for the 4 different products will be quite similar, differing only in COLOR descriptions. 
It seems apparent that google compared all four of my apron product pages to my apron product-listing pages, and decided that the product listing page was the only one it needed to index. 
Ouch.

Lessons from this:
1 - try to add more variation to your product descriptions, even when the only difference between products is color.
2 - do not use the same favorite apron image as the image for the product-listing thumb and also as the 1st image called by the product page image viewer.

My products are similar to products offered by hundreds (thousands?) of other online vendors.  These are my "competitors".

Due to the AC dynamics described above, my search rankings are lower than my competitors, and my image search results are small and cheap-looking compared to the big beautiful fullsize images that my competitors sites have in image search results. 
Ouch. 

"Experts" agree.  Image Search is becoming the venue of choice for the majority of online shoppers.  This is why google recently added the search toolbar to the top of the image search results page.  Y'know, that multi-colored bar that lets you easily refine your image search results to narrower categories of images.  They built and installed that feature because their metrics say that most shoppers will enter a search term and then click the rather obscure "Image" tab to start shopping.  Try it yourself.  It's a better way to shop.  Because shopping has always been a visual experience first. 

IMO - the AC system needs a few simple fixes (described here I hope) to greatly improve S E O. 

This brings us to "robots meta", which are meta tags that exist in the head of every page generated by AC.  (Is tag the right word?)
As we said earlier, sitemaps are a guide for googlebot, but not a ruleset.  Sitemaps do not control what googlebot does. 
There are meta commands available that DO control what googlebot does, and you can place these into the head section of various pages to actually control the behavior of the googlebot. 
Robots meta is a two-edged sword. 
Used conservatively, commands like noindex and noimageindex can be effective tools for managing how google indexes your site.
But google doesn't "like" noindex.  A few noindex commands is okay.  Many gives the impression that you are hiding content. 
Visit yoast or other expert seo sites to learn this yourself.  Overuse of noindex diminishes authority. 

For me, I think the optimal solution for my search engine problems is this:
1 - gain control over seo-url generation, then create a sitemap with urls that match seo-urls that match navigation urls.
2 - noimageindex the head of the category and product-listing pages.
3 - customize my sitemap so that the only image links in the map are the full-size version of the multiple product images.  No thumbs on the map.

Alt solution:
1 - same.
2 - same.
3 - remove the thumbs and image viewer from the product page, replace with a vertical stack of responsive fullsize images.  Google will then eagerly crawl each one because each is present on the page when it loads.   

Steps 2 and 3 are within my skill level.

I need to know how to do step 1.

Google's primary goal is to be the best index of online content. 
Therefore google loves rich content and beautiful images.
If you create a site with rich content and beautiful images, google will love to index your site and place it high in the search results for your stuff. 
Unless you look weird or spammy or redundant, in which case the bot will think you are spammy and you will suffer. 

Search Engine rankings are not the do-all end-all.
2/3 of site traffic comes from paid ads.
The other third comes from online word-of-mouth and search engine results.

I doesn't take any more time to build a truly Search Engine Optimized site than it takes to build a Search Engine Crippled site. 
So may as well get it right the 1st time, and then steer your focus to building word of mouth and buying ads. 

The purpose of this post is to point out the importance of making AbanteCart an app that automatically creates a site that is truly SEO,
and to perhaps contribute to a knowledge base on best practices for building an AC site. 

BTW - I type really fast.  Crazy fast. 
I know my posts are long, but i like to think that many of them contain usable information that may be of value to other AC consumers. 

If you are a noob and not sure where to start, go to Google Search Console.  Start reading. 

I need to know how to do step 1.

Thx.

60
General Support / Critical app error - resize image error
« on: September 14, 2017, 06:12:42 PM »
New error today, on local machine, editing site downloaded from server. 

After 3 days work with no problem, I changed seo-keyword for all categories, and saved each. 

My site has 15 categories, all on home page. 

My homepage works fine.  All categories on the home page have their proper image file displayed. 

Suddenly I get Message Manager Critical App error.  Resize image error.   root/resources/image/18/6f/9.

I go look to see what image that is.  It is the image for cases.

I click cases category on home page to go to product listing: no images show for product listing, only alt attributes.

I click each product in listing, no images show for product, only alt attributes. 

All other categories & listings & products pages are working fine. 

Only cases listing and product pages are broken. 

I found this:  https://github.com/abantecart/abantecart-src/issues/866

I am a beginner or not tech!!     

!

!

!

I do not understand the discourse on the github page.

Any idea what happened? 

How do i fix it? 

Can I hit it with a bat, or perhaps a skillet?!?!?! 

Car?!?! 

!

Thx. 

Pages: 1 2 3 [4] 5 6 ... 11

Powered by SMFPacks Social Login Mod