diff --git a/htdocs/core/lib/website2.lib.php b/htdocs/core/lib/website2.lib.php
index 48ef724e4dc..2ef48e94bda 100644
--- a/htdocs/core/lib/website2.lib.php
+++ b/htdocs/core/lib/website2.lib.php
@@ -124,7 +124,9 @@ function dolSavePageContent($filetpl, Website $object, WebsitePage $objectpage)
$tplcontent .= ''."\n";
// Add translation reference (main language)
if ($object->isMultiLang()) {
+ // Add myself
$tplcontent .= ''."\n";
+ // Add page "translation of"
$translationof = $objectpage->fk_page;
if ($translationof) {
$tmppage = new WebsitePage($db);
@@ -132,9 +134,30 @@ function dolSavePageContent($filetpl, Website $object, WebsitePage $objectpage)
if ($tmppage->id > 0) {
$tmpshortlangcode = '';
if ($tmppage->lang) $tmpshortlangcode = preg_replace('/[_-].*$/', '', $tmppage->lang); // en_US or en-US -> en
- $tplcontent .= ''."\n";
+ if ($tmpshortlangcode != $shortlangcode) {
+ $tplcontent .= ''."\n";
+ }
}
}
+ // Add "has translation pages"
+ $sql = 'SELECT rowid as id, lang, pageurl from '.MAIN_DB_PREFIX.'website_page where fk_page IN ('.$objectpage->id.($translationof ? ", ".$translationof : "").")";
+ $resql = $db->query($sql);
+ if ($resql)
+ {
+ $num_rows = $db->num_rows($resql);
+ if ($num_rows > 0)
+ {
+ while ($obj = $db->fetch_object($resql))
+ {
+ $tmpshortlangcode = '';
+ if ($obj->lang) $tmpshortlangcode = preg_replace('/[_-].*$/', '', $obj->lang); // en_US or en-US -> en
+ if ($tmpshortlangcode != $shortlangcode) {
+ $tplcontent .= ''."\n";
+ }
+ }
+ }
+ }
+ else dol_print_error($db);
}
// Add canonical reference
$tplcontent .= ''."\n";