Форум русской поддержки Joomla!® CMS
22.01.2017, 22:25:05 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: 1 2 [3] 4 5   Вниз
  Добавить закладку  |  Печать  
Автор

Канонические ссылки для Joomla 3

 (Прочитано 27555 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Fedor Vlasenko
Профи
********

Репутация: +697/-5
Offline Offline

Пол: Мужской
Сообщений: 3821


Все начинается с Value


« : 07.11.2012, 13:37:59 »

Что такое каноническая ссылка и об атрибуте rel="canonical".
Предлагаю решение для построения канонических ссылок(в комплекте com_content, com_contact, com_weblinks, плагин расширяем для других компонентов).
Плагин нужно тестировать, о багах и глюках, а также пожеланиях и прдлжениях прошу писать в этой теме.
Инструкция по подключению. Joomla 3.0
1. Скачиваете плагин.
2. Устанавливаете плагин.
3. Расширения менеджер плагинов - включаете плагин.
Плагин временно удален. В Joomla версии 3.1 на которой тестировал, неправильно работает роутер.
Можете убедится
ваш сайт/component/content/article.html?id=7 здесь 7 ид материала из админки
Код
$url = JURI::getInstance()->toString();
$uri = JURI::getInstance($url);
$query = JFactory::getApplication()->getRouter()->parse($uri);
var_dump($query );
выведет id='article' это ошибка должно быть в нашем случае  id='7'
Буду просматривать обновления поправят роутер перепишу плагин
« Последнее редактирование: 20.06.2013, 13:34:40 от Fedor Vlasenko » Записан
 
offa
Захожу иногда
**

Репутация: +1/-0
Offline Offline

Сообщений: 14


« Ответ #61 : 22.02.2013, 04:22:49 »

"За борьбу с сrel="canonical"

Ну, rel="canonical" иногда очень полезная вещь. Только если он не ставится автоматически, а у вас самого есть возможность настраивать, в какой форме и на каких страницах его употреблять.

Offa. Вы абсолютно правы. Такую каку делал плагин который я скачал в этой теме (самый первый пост). Как только его отключил - rel="canonical" исчез

Я этот плагин не устанавливал и работы его не видел. Но из постов в этой и "соседней" теме догадался, что он и написан как раз с целью предотвращения и устранения ошибки, допущенной в Joomla 3. Насколько я понял, плагин можно настраивать. Так что, вам, Дмитрий, может быть, надо просто поменять его настройки, а не отключать совсем. Жаль, что по этому вопросу не высказываются гораздо более опытные люди. Думаю, пару кратких намёков было бы сделать совсем несложно.

можно и плюс поставить в репу Azn

Так я и поставил :-)

Спасибо! А я что-то не пойму, как на этом форуме можно ставить другим людям плюсы? Или новичкам здесь это недоступно?
Записан
Dmitriy50
Осваиваюсь на форуме
***

Репутация: +4/-11
Offline Offline

Пол: Мужской
Сообщений: 97


TV


« Ответ #62 : 22.02.2013, 04:53:24 »

С плагином этим я реально проверил. В строке 16 - сrel="canonical" появляется если исправить SEF.php. Настроек в нем нет, да и автор об этом не написал. Но справедливости ради - пока я не исправлял SEF.php и у меня на сайте работал этот плагин, Яндекс не исключал страницы, а как только я (в дополнение к плагину) закомментировал эту строку в SEF.php - Яндекс сразу нашел эти страницы. Одно точно - с исправленным SEF.php и включенным плагином в 16 строке появляется сrel="canonical", а как только плагин отключаю то исчезает.
Плюсы я ставлю там где имя и чуть ниже "Репутация", жму плюсик и вписываю за что ставлю плюс. Про новичков не знаю.
Записан
offa
Захожу иногда
**

Репутация: +1/-0
Offline Offline

Сообщений: 14


« Ответ #63 : 22.02.2013, 11:46:48 »

С плагином этим я реально проверил... Настроек в нем нет

А что же тогда имеется в виду в этих сообщениях:


Огромное спасибо за плагин. Но есть вопрос...

Если в настройках плагина указать адрес доменного имени http://сайт/ (с слешем) то получается следующее
<link href="http://сайт//" rel="canonical" /> Как видим 2 косых черты после имени домена появилось.
Если же указать http://сайт без косой черты, то снова
<link href="сайт/index.php" rel="canonical" />

siynik оставьте поле домена пустым. Немножко освобожусь, подправлю

Плюсы я ставлю там где имя и чуть ниже "Репутация", жму плюсик и вписываю за что ставлю плюс. Про новичков не знаю.

У меня плюсик "не нажимается". Значит, - сопливый новичок! ))))))))
Записан
Dmitriy50
Осваиваюсь на форуме
***

Репутация: +4/-11
Offline Offline

Пол: Мужской
Сообщений: 97


TV


« Ответ #64 : 22.02.2013, 16:27:18 »

Вот одно поле домена и есть. Я правда не совсем понял для чего, но автор написал - просто включить. Плагин хороший (работал же нормально у меня на сайте), но видимо после исправления SEF.php что то не так начинает работать.
Записан
igagarin
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 18



« Ответ #65 : 26.02.2013, 23:04:43 »

Мда, обновился около недели назад с ветки 2.5.х на 3.0.х, начали выпадать статьи из Яндекса. Если бы не писал свои скрипты и случайно не глянул по диагонали на HTML код страниц, не заметил бы этого преступного кода. По другому его и не назовешь,- за несколько дней из индекса ПС выпало 5000 страниц.
Записан
offa
Захожу иногда
**

Репутация: +1/-0
Offline Offline

Сообщений: 14


« Ответ #66 : 27.02.2013, 01:07:09 »

Я охреневаю даже не столько на сам этот уникальный код, сколько на другое. Как можно понять отсюда, разработчики Joomla знали об этой ошибке уже несколько месяцев назад. Полагаю, что исправить её совсем не сложно. Но она не только не исправлена уже в нескольких вышедших с тех пор обновлениях, но, по-видимому, не сделано и ничего, чтобы широко предупредить о ней массы пользователей.

Не хотел бы быть плохим пророком, но думаю, что этот "баг" надолго станет позором для Joomla и притчей во языцех.
Записан
Dmitriy50
Осваиваюсь на форуме
***

Репутация: +4/-11
Offline Offline

Пол: Мужской
Сообщений: 97


TV


« Ответ #67 : 03.03.2013, 03:54:29 »

А кто знает как быть с rel="canonical" в ZOO? Сайт J 3.0.3 + ZOO 3.0.10 в SEF.php строка закомментирована, но в коде вот такое:
Показать текстовый блок

Может это и нормально? Если нет, то подскажите пожалуйста как избавиться?
Записан
Dmitriy50
Осваиваюсь на форуме
***

Репутация: +4/-11
Offline Offline

Пол: Мужской
Сообщений: 97


TV


« Ответ #68 : 06.03.2013, 20:06:02 »

Неужели никто не знает? Может это только у меня такие проблемы? Жаль!  Angry
Записан
offa
Захожу иногда
**

Репутация: +1/-0
Offline Offline

Сообщений: 14


« Ответ #69 : 08.03.2013, 13:57:15 »

Никто не поделится впечатлениями, как вообще идёт индексация сайтов на Joomla 3? После устранения ошибки с rel = "canonical" у меня индексирование началось и на Google, и на Яндексе, но столкнулся с такими интересными особенностями.

1. Перенёс на свой сайт несколько статей с другого сайта по договорённости с его владельцами. Статьи были перенесены в точно таком же виде, в каком они находились на прежнем сайте - и на прежнем сайте все эти материалы сразу после переноса были целиком забраны в теги <noindex>, чтобы исключить мысль об их воровстве.

Некоторые из этих статей до переноса находились в рейтинге Яндекса совсем близко к первой десятке. Теперь они уже проиндексированы на моём сайте - и не попали (по тем же запросам) даже в первую сотню, несмотря на <NOINDEX> в месте их прежнего нахождения!

Это, впрочем, ещё как-то можно объяснить тем, что материал всё же был дублирован. Но вот вторая пока необъяснимая для меня х**ня:

2. В Яндексе пытаюсь открыть "копии на сервере" помещённых мною на сайте с Joomla 3 материалов. Для этого, как известно, есть специальная ссылка "копия" под "главной" ссылкой на материал в поисковике. И вот - ни одна из копий не открывается. Везде выдаётся ошибка 404!

Может быть, здесь виновата не Joomla, а Яндекс? Не знаю, но после знаменитого бага с rel = "canonical" создаётся впечатление, что от команды разработчиков Joomla можно ждать чего угодно. Нет ли в третьей версии ещё и других ошибок и крупных упущений, связанных с индексацией?


Dmitriy50, на ваш вопрос ответить не могу. ZOO никогда не пользовался.
Записан
ELLE
Support Team
*****

Репутация: +863/-0
Offline Offline

Пол: Женский
Сообщений: 4730



« Ответ #70 : 08.03.2013, 14:03:56 »

2. такое может быть из-за мета-тега content="no-cache" или в заголовок отдает -
Cache-Control: no-store, no-cache...
Pragma: no-cache

проверьте свой сайт на предмет этого

(хотя по идее в таком случае кнопка "копия" у вашего сайта совсем бы отсутствовала...)

-------------
offa, красный цвет запрещен, отредактируйте свои сообщения в данной теме
« Последнее редактирование: 08.03.2013, 14:20:19 от ELLE » Записан
ELLE
Support Team
*****

Репутация: +863/-0
Offline Offline

Пол: Женский
Сообщений: 4730



« Ответ #71 : 08.03.2013, 14:52:36 »

кстати, советуете хакнуть плагин -
за комментируйте //$doc->addHeadLink($link, 'canonical'); в стандартном плагине SEF plugins/system/sef/sef.php

хотя из вашего же решения выходит что достаточно добавить в шаблон
Код
unset($doc->_links[array_search(array('relation' => 'canonical', 'relType' => 'rel', 'attribs' => array()), $doc->_links)]);
и каноникал мы этот больше не увидим Azn
Записан
offa
Захожу иногда
**

Репутация: +1/-0
Offline Offline

Сообщений: 14


« Ответ #72 : 08.03.2013, 18:05:13 »

ELLE, большущее вам русское merci за полезнейший совет!! Только куда именно "в шаблон" надо вставлять ваш код? В файл "templates/имя_шаблона/index.php"? В какую его часть? Я попробовал вставить почти в самом начале, прямо после блока "Detecting Active Variables" (есть там такой) - и действительно всё сработало!! Canonical исчез. Но правильно ли я определил файл и место вставки? Может, вставил не туда, и что-то будет выполняться неправильно?


И - как проверить сайт на наличие заголовков

Cache-Control: no-store, no-cache...
Pragma: no-cache?

Они должны создавать "соответствующие" метатеги в html-коде страницы? Наверное, нет: header и метатег могут взаимно заменять друг друга, но не обязательно должны существовать вместе... Эх, совсем забыл PHP!


Метатегов таких нигде вроде не вижу, но залез сейчас в настройки своего Joomla-сайта - и там стоит "Кэширование отключено"! По-моему, это поставил не я, а так было по умолчанию (хотя в предыдущих версиях Joomla, насколько я знаю, кэширование по умолчанию стояло включённым). И что же - копии на сервере могли не сохраняться по этой причине? Если да, то какое кэширование надо включить - стандартное или прогрессивное? Да и нужно ли это: может ли повлиять на индексацию? Хотя у меня страницы не обновляются то и дело, так что включённое кэширование, по идее, помешать не должно...




Про красный цвет не знал. Извините, сейчас отредактирую.
« Последнее редактирование: 08.03.2013, 18:16:13 от offa » Записан
ELLE
Support Team
*****

Репутация: +863/-0
Offline Offline

Пол: Женский
Сообщений: 4730



« Ответ #73 : 08.03.2013, 19:18:05 »

Адрес сайта укажите
Записан
offa
Захожу иногда
**

Репутация: +1/-0
Offline Offline

Сообщений: 14


« Ответ #74 : 08.03.2013, 22:56:04 »

ELLE, написал Вам в личку.
Записан
offa
Захожу иногда
**

Репутация: +1/-0
Offline Offline

Сообщений: 14


« Ответ #75 : 08.03.2013, 23:12:34 »

ELLE. получил ваше сообщение о том, что копии материалов всё же есть на сервере. Перепроверил сам те материалы, для которых пытался загрузить сегодня копии и получал ошибку 404. Действительно, теперь копии есть. Может, потому, что я включил кэширование в настройках сайта? Или днём были какие-то сбои в Сети? В любом случае, ещё раз вам большое спасибо - и извините за беспокойство, если оно было не по делу.

И ещё просьба: если Вас не затруднит, не дадите ли ссылку на ресурс (на этом или другом сайте), где можно было бы ознакомится с PHP-функциями и классами Joomla. А то я в вашем коде понимаю, что такое unset и array_search, а вот откуда берутся $doc, _links и т.д. для меня - большая загадка. ))))))))))
Записан
ELLE
Support Team
*****

Репутация: +863/-0
Offline Offline

Пол: Женский
Сообщений: 4730



« Ответ #76 : 08.03.2013, 23:26:59 »

код не мой, а Fedor Vlasenko, взят из его плагина в старт-посте
вся документация как всегда тут - docs.joomla.org

По поводу ваших "копий", то это врядли зависит от общих настроек Joomla по кешированию, на тех сайтах, где отключено кеширование - копии тоже есть. Возможно проблема была на стороне Яндекса.
« Последнее редактирование: 08.03.2013, 23:30:49 от ELLE » Записан
Dmitriy50
Осваиваюсь на форуме
***

Репутация: +4/-11
Offline Offline

Пол: Мужской
Сообщений: 97


TV


« Ответ #77 : 09.03.2013, 20:46:45 »

... ну может всетаки кто знает решение?
Показать текстовый блок

Сайт J 3.0.3 + ZOO 3.0.10 в SEF.php нужная строка закомментирована.
Записан
ELLE
Support Team
*****

Репутация: +863/-0
Offline Offline

Пол: Женский
Сообщений: 4730



« Ответ #78 : 09.03.2013, 20:59:51 »

Ответ #70 не помог?
тогда в зу надо ковырять
« Последнее редактирование: 09.03.2013, 21:03:56 от ELLE » Записан
Dmitriy50
Осваиваюсь на форуме
***

Репутация: +4/-11
Offline Offline

Пол: Мужской
Сообщений: 97


TV


« Ответ #79 : 09.03.2013, 22:58:23 »

Вот это - "за комментируйте //$doc->addHeadLink($link, 'canonical'); в стандартном плагине SEF plugins/system/sef/sef.php" сделал, а вот это - "unset($doc->_links[array_search(array('relation' => 'canonical', 'relType' => 'rel', 'attribs' => array()), $doc->_links)]);" не знаю куда надо вставить!
Записан
r-ma
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 5


« Ответ #80 : 11.04.2013, 17:17:47 »

Здравствуйте, тоже интересно:
куда именно вставлять
unset($doc->_links[array_search(array('relation' => 'canonical', 'relType' => 'rel', 'attribs' => array()), $doc->_links)]);
пробовал в разные места файла шаблона index.php
но ничего не вышло
Записан
Fedor Vlasenko
Профи
********

Репутация: +697/-5
Offline Offline

Пол: Мужской
Сообщений: 3821


Все начинается с Value


« Ответ #81 : 11.04.2013, 17:53:50 »

Re: rel="canonical" Joomla 3 как удалить
Записан
r-ma
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 5


« Ответ #82 : 11.04.2013, 18:11:15 »

спасибо за ссылку - был там уже.. но не ясно что все же лучше сделать
закомментировать строки или вставить
unset($doc->_links[array_search(array('relation' => 'canonical', 'relType' => 'rel', 'attribs' => array()), $doc->_links)]);
если вставить то куда и вместо чего?
если не сложно опишите глупому..
спасибо.
Записан
r-ma
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 5


« Ответ #83 : 11.04.2013, 18:13:37 »

вставил в head следующее

<?php
unset($this->_links[array_search(array('relation' => 'canonical', 'relType' => 'rel', 'attribs' => array()), $this->_links)]);
?>

правильно?
Записан
Fedor Vlasenko
Профи
********

Репутация: +697/-5
Offline Offline

Пол: Мужской
Сообщений: 3821


Все начинается с Value


« Ответ #84 : 11.04.2013, 18:29:58 »

в конец файла вставьте
Записан
r-ma
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 5


« Ответ #85 : 11.04.2013, 19:07:56 »

в конец файла вставьте

вставлять эту строку, которую везде упоминают именно с <?php                     ?>

и в конце - это после </html>? 

заранее извиняюсь за тупизм с моей стороны)
Записан
r-ma
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 5


« Ответ #86 : 11.04.2013, 19:14:01 »

в конец файла вставьте

и еще
если я правильно понимаю, прописывая данную строку уберется значение на всех ранее помеченных страницах как неканонические, в том числе и на тех, где это было "правильно".
как быть в этом случае? например со страницей /index.php
и еще
будут ли теперь дубли страниц?
и повлияет ли это на место сайта/страниц в поиске?
спасибо еще раз
Записан
Dmitriy50
Осваиваюсь на форуме
***

Репутация: +4/-11
Offline Offline

Пол: Мужской
Сообщений: 97


TV


« Ответ #87 : 24.04.2013, 22:50:54 »

Вышла J 3.1.0. Обновил один из сайтов и снова проблема с "canonical"! Подскажите опытные люди лечит тем же способом (/** $doc->addHeadLink($link, 'canonical'); */)?
Записан
Abiladenda
Осваиваюсь на форуме
***

Репутация: +5/-0
Offline Offline

Сообщений: 187



« Ответ #88 : 29.04.2013, 21:42:01 »

Вроде бы решили проблему в 3.1.1 или ошибаюсь?
Записан
Abiladenda
Осваиваюсь на форуме
***

Репутация: +5/-0
Offline Offline

Сообщений: 187



« Ответ #89 : 29.04.2013, 22:01:17 »

И по zoo, zoo плодит кучу дублей, если у вас есть ссылки на категории будет просто куча дублей, к тому же если вы пользуете на zoo теги, будет еще больше дублей, поэтому отключать в zoo не стоит, к тому же там это организованно очень грамотно, и при включенном SEF Joomla canonical будет у итемов, и не будет у этих же итемов скажем из другой категории если вы размещаете итем в нескольких категориях (именно для этого и нужен zoo), или под другим тегом. Именно поэтому у кого сайт на zoo или есть zoo каталог, важно что бы сама Joomla была уже исправлена, что кажется и произошло в версии 3.1.1.
Записан
Langoliers
Завсегдатай
*****

Репутация: +67/-2
Offline Offline

Пол: Мужской
Сообщений: 695


Если б Я изучал людей, то был бы паразитологом


« Ответ #90 : 20.06.2013, 10:20:14 »

Тупо не работает этот плагин. Включил - нет канонических ссылок в коде. Пробовал указать домен вида www.site.com и site.com - пишет "Недопустимое поле: Доменное имя".
Вернусь сейчас к старому способу допиливания шаблона.
Записан
Страниц: 1 2 [3] 4 5   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet