diff --git a/htdocs/core/lib/website2.lib.php b/htdocs/core/lib/website2.lib.php index fb161162679..989a5b15ac3 100644 --- a/htdocs/core/lib/website2.lib.php +++ b/htdocs/core/lib/website2.lib.php @@ -215,17 +215,17 @@ function dolSavePageContent($filetpl, Website $object, WebsitePage $objectpage, $canonicalurladdidlang = ''; if ($objectpage->lang) { // A language is forced on the page, it means we may have other language files with hard links into properties of page $canonicalurl = (($objectpage->id == $object->fk_default_home) ? '/' : (($shortlangcode != substr($object->lang, 0, 2) ? '/'.$shortlangcode : '').'/'.$objectpage->pageurl.'.php')); - } else { // No language forced, it means the canonical is the one with + } else { // No language forced, it means the canonical is the one with params making url unique $canonicalurl = '/'.$objectpage->pageurl.'.php'; if ($object->lang && $listofaltlang) { $tmpshortlangcode = preg_replace('/[_-].*$/', '', $object->lang); // en_US or en-US -> en // Add parameter ID required to be unique/canonical - $canonicalurladdidlang = ''; - $canonicalurladdidlang .= 'l=shortlang ? $weblangs->shortlang : "'.$tmpshortlangcode.'"; ?>'; + $canonicalurladdidlang = '?__SEO_CANONICAL_URL_PARAMS__'; + $canonicalurladdidlang .= '&l=shortlang ? $weblangs->shortlang : "'.$tmpshortlangcode.'"; ?>'; } else { // Add parameter ID required to be unique/canonical - $canonicalurladdidlang = ''; + $canonicalurladdidlang = '?__SEO_CANONICAL_URL_PARAMS__'; } } @@ -278,20 +278,20 @@ function dolSavePageContent($filetpl, Website $object, WebsitePage $objectpage, $tplcontent .= ''."\n"; $tplcontent .= ''."\n"; - } else { + } else { // No language forced, it means the canonical is the one withparams making url unique $canonicalurl = '/'.$objectpage->pageurl.'.php'; $arrayofaltlang = explode(',', $listofaltlang); foreach ($arrayofaltlang as $altlang) { // Add parameter ID required to be unique/canonical - $canonicalurladdidlang = ''; - $canonicalurladdidlang .= 'l='.$altlang; + $canonicalurladdidlang = '?__SEO_CANONICAL_URL_PARAMS__'; + $canonicalurladdidlang .= '&l='.$altlang; $tplcontent .= ''."\n"; } $tmpshortlangcode = preg_replace('/[_-].*$/', '', $object->lang); // en_US or en-US -> en - $canonicalurladdidlang = ''; - $canonicalurladdidlang .= 'l='.$tmpshortlangcode; + $canonicalurladdidlang = '?__SEO_CANONICAL_URL_PARAMS__'; + $canonicalurladdidlang .= '&l='.$tmpshortlangcode; $tplcontent .= ''."\n"; } } @@ -320,29 +320,34 @@ function dolSavePageContent($filetpl, Website $object, WebsitePage $objectpage, $tplcontent .= 'content, '$__PAGE__TITLE__') !== false) { - $tplcontent .= '$tmp = preg_replace("/