
Лучший Ответ Cheren-dow , 24 January 2014 - 09:03
Попробуйте так
$baseUrl = substr(JUri::base(),0,-1);
$this->app->system->document->addHeadLink($baseUrl . $categoryUrl, 'canonical');
1 слеш должен убраться
Перейти к сообщению
Лучший Ответ Cheren-dow , 24 January 2014 - 09:03
Попробуйте так
$baseUrl = substr(JUri::base(),0,-1);
$this->app->system->document->addHeadLink($baseUrl . $categoryUrl, 'canonical');
1 слеш должен убраться
Перейти к сообщениюОтправлено 24 January 2014 - 06:58
Здравствуйте.
Вот в этой теме http://forum.jbzoo.c...onical/?p=34978 обсуждался вопрос про добавление тега rel="canonical" к категории.
Я сделал так, как советовал Денис (добавил код в файл \components\com_zoo\controllers\default.php).
Все получилось - каноническая ссылка появилась, вот только возникла проблема...
Ссылка получилась без указания домена.
Пример:
Должно быть так -
<base href="http://имя_домена.ru/detskaya-komnata/felicita-kids-mebel/krovati-dvukhyarusnye-felicita-kids" />
<link href="http://имя_домена.ru/detskaya-komnata/felicita-kids-mebel/krovati-dvukhyarusnye-felicita-kids" rel="canonical" />
А получилось вот так -
<base href="http://happyhome-mebel.ru/detskaya-komnata/felicita-kids-mebel/krovati-dvukhyarusnye-felicita-kids" />
<link href="/detskaya-komnata/felicita-kids-mebel/krovati-dvukhyarusnye-felicita-kids" rel="canonical" />
Подскажите пожалуйста, КАК ИСПРАВИТЬ ситуацию?
Спасибо.
Отправлено 24 January 2014 - 07:11
Попробуйте в
$this->app->system->document->addHeadLink($categoryUrl, 'canonical');
Дописать адрес сайта
$this->app->system->document->addHeadLink(JUri::base() . $categoryUrl, 'canonical');
Сам не проверял.
Сообщение отредактировал Cheren-dow: 24 January 2014 - 07:11
Отправлено 24 January 2014 - 07:23
Спасибо, почти получилось, только в ссылке после имени домена стоит два слэша:
<link href="http://имя_домена.ru//detskaya-komnata/felicita-kids-mebel/krovati-dvukhyarusnye-felicita-kids" rel="canonical" />
Подскажите пожалуйста, как это исправить?
Отправлено 24 January 2014 - 09:25
Да, все отлично:
Получился вот такой код
// add canonical if ($this->app->system->document instanceof JDocumentHTML) { $categoryUrl = JRoute::_($this->app->route->category($this->category), true, -1); $baseUrl = substr(JUri::base(),0,-1); $this->app->system->document->addHeadLink($baseUrl . $categoryUrl, 'canonical'); $headData = $this->app->system->document->getHeadData(); foreach ($headData['links'] as $key => $value) { if ($value['relation'] == 'canonical' && $key != $categoryUrl) { unset($headData['links'][$key]); } } $this->app->system->document->setHeadData($headData); }
Спасибо Вам огромное за помощь!!!