QParts Posted June 27, 2019 Share Posted June 27, 2019 Hi all! What can be the reason for that the canonical is not converted in the source of the page for META tags? <link href="http://qrpparts.com/index.php?_a=product&product_id=254" rel="canonical"> The url rewrite works in the menu and on the product pages, but for example, on the line, below the menu it writes like this: The google says: User-declared canonical N/A The htaccess rewrite rules are fine. Can you give me an idea of which file to watch? Thanks in advance Link to comment Share on other sites More sharing options...
bsmither Posted June 28, 2019 Share Posted June 28, 2019 Welcome QParts! Glad to see you made it to the forums. URLs that stay as _a=whatever&whatever_id=number indicates the SEO functions (aka, friendly URLs as opposed to standard URLs) are not working. I would say that you may be running CubeCart 5, but then the skin is definitely Foundation. The Foundation skin can certainly be run on CubeCart 5, but I think this is not the case. Looking at the /diodes.html page, the only thing not working right is the breadcrumbs (and the canonical link). Same with the /diodes/rf-switching.html page. Bad breadcrumbs and canonical. So, something is commonly affecting both breadcrumbs and the canonical link. I notice that you have a link to datasheets. Is this a plugin? If so, temporarily disable it. If you needed to make changes to the code, temporarily restore to the original versions of the CubeCart code files (including changes to the skin). Link to comment Share on other sites More sharing options...
bsmither Posted June 28, 2019 Share Posted June 28, 2019 The file /classes/seo.class.php, the method SEOable() is given the standard querystring and returns the friendly.html string. But, a test in /includes/functions.inc.php, currentPage(), first makes sure that the SEO class is instantiated. So, we may want to watch if the SEO class has been destroyed when GUI->display() gets called. Adding a breadcrumb in GUI->addBreadcrumb() also uses SEO->SEOable(). But then, so does a lot of other code. Link to comment Share on other sites More sharing options...
QParts Posted June 28, 2019 Author Share Posted June 28, 2019 Dear bsmither, I use Cubecart V6. I copied the original theme, but the same error. "Datasheet" is not a plugin. Just one link. I find error_log for such lines. [28-Jun-2019 06:43:56 UTC] PHP Warning: preg_match() [<a href='http://docs.php.net/manual/en/function.preg-match.php'>function.preg-match.php</a>]: The /e modifier is no longer supported, use preg_replace_callback instead in /home/brbyx3qrsn4j/public_html/classes/seo.class.php on line 637 Can it be related? Link to comment Share on other sites More sharing options...
QParts Posted June 28, 2019 Author Share Posted June 28, 2019 Problem resolved! https://github.com/cubecart/v6/issues/2301 In seo.class.php, line 637: if (preg_match('#^(.*/)?[\w]+.[a-z]+\?_a\=([\w]+)(?:\&(amp;)?([\w\[\]]+)\=([\w\-\_]+)([^"\']*))$#ieS', $path, $match)) { Suggest removing the e modifier, to read: if (preg_match('#^(.*/)?[\w]+.[a-z]+\?_a\=([\w]+)(?:\&(amp;)?([\w\[\]]+)\=([\w\-\_]+)([^"\']*))$#iS', $path, $match)) { Thanks for the help! The shop is now working perfectly! Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.