(2016-03-28, 23:10:54)morvy Wrote: I'm having similar problem with parents, don't know why. On my latest website (http://bulgaricus.sk) I'm using breadcrumbs and canonical url that is created by i18n, however url bar says /parent/category/product while canonical url is only /category/product and in breadcrumbs it also removes /parent/ from last entry. I've tried switching from %parent% to %parents% but nothing changed (except some parts of website don't work because of %parents% not translated). Is there any special logic needed to get full links for breadcrumbs and mainly for canonical url ?
Thanks
So I played around a little bit with i18n functions and created my own canonical url function that shows what I want. I use the same code for my microdata breadcrumbs so there are some strange things, but it works
PHP Code:
function custom_canonical() {
$links = return_i18n_breadcrumbs(return_page_slug());
global $SITEURL; $n = count($links); $gparent = ""; $url = "";
for($i=0; $i<$n; $i++) {
$gparent = (empty($gparent)) ? $links[$i]['parent'] : $gparent;
if($gparent != $links[$i]['parent']) {
$links[$i]['parent'] = $gparent.'/'.$links[$i]['parent'];
}
if($links[$i]['parent']!="") $links[$i]['parent'] = "/".$links[$i]['parent'];
$url = rtrim($SITEURL,"/").$links[$i]['parent'].'/'.$links[$i]['url'];
}
if($url==$SITEURL.'index') $url = rtrim($SITEURL,"/");
echo '<link rel="canonical" href="'.$url.'">',PHP_EOL;
}