Перейти к содержимому

MOAB

Как добавить canonical в DLE


  • Войдите, чтобы ответить
Сообщений в теме: 23

#1 Homa

Homa

    Продвинутый

  • Участник
  • PipPipPip
  • 214 сообщений
75
  • Изподвыподверта

Отправлено 28 Март 2012 - 18:57

Как добавить canonical в DLE, подскажите, пожалуйста :huh:
Чтобы жить спокойно, нужно приложить не меньше усилий чем для того, чтобы править миром.
Ссылка в подписи

#2 MiXa

MiXa

    Ненавижу белых мух и твердую воду

  • Основатель
  • PipPipPipPipPip
  • 1 546 сообщений
1 621
  • Google+
  • ИзМосква

Отправлено 28 Март 2012 - 19:03

В DLE canonical очень необходимая вещь, а то дубли в ДЛЕ мучают маманегорюй.
Делаем так:
В корневом файле index.php вносим изменения

После строки:
if ($dle_module == ‘showfull’) {

Добавить:
$metatags .= <<<HTML

<link rel="canonical" href=»{$full_link}»>
HTML;

Вуаля - полная новость http://www.example.com/fullnews получила rel=canonical
Меня полностью устраивает хостинг ISP. И да, SEO и продвижением сайтов не занимаюсь, но душевный СЕО форум рекомендовать могу.

#3 Homa

Homa

    Продвинутый

  • Участник
  • PipPipPip
  • 214 сообщений
75
  • Изподвыподверта

TC Отправлено 28 Март 2012 - 19:10

Спасибо!!!
Сейчас попробую :)
Чтобы жить спокойно, нужно приложить не меньше усилий чем для того, чтобы править миром.
Ссылка в подписи

#4 Blaster

Blaster

    Новенький

  • Старая гвардия
  • Pip
  • 9 сообщений
2

Отправлено 21 Май 2012 - 14:17

MiXa, не совсем верное решение.

Решение для DLE 9.5-9.6

Открываем файл /engine/modules/show.full.php и находим:
  } else {
  
   $full_link = $config['http_home_url'] . "index.php?newsid=" . $row['id'];
   $print_link = $config['http_home_url'] . "engine/print.php?newsid=" . $row['id'];
   $short_link = "";
   $link_page = "";
   $news_name = "";

  }

ВЫШЕ добавляем:
$canonical = $full_link;

Открываем файл /engine/engine.php и находим:
if ($config['allow_rss']) $metatags .= <<<HTML
<link rel="alternate" type="application/rss+xml" title="{$rss_title}" href="{$rss_url}" />
HTML;

НИЖЕ добавляем:
if (isset($canonical)) $metatags .= <<<HTML
\n<link rel="canonical" href="{$canonical}" />
HTML;


#5 MiXa

MiXa

    Ненавижу белых мух и твердую воду

  • Основатель
  • PipPipPipPipPip
  • 1 546 сообщений
1 621
  • Google+
  • ИзМосква

Отправлено 23 Май 2012 - 16:44

Просмотр сообщенияBlaster сказал:

ВЫШЕ добавляем:

Может ниже? ПОСЛЕ формирования переменной $full_link

А так, да. Решение более правильное
Меня полностью устраивает хостинг ISP. И да, SEO и продвижением сайтов не занимаюсь, но душевный СЕО форум рекомендовать могу.

#6 Blaster

Blaster

    Новенький

  • Старая гвардия
  • Pip
  • 9 сообщений
2

Отправлено 23 Май 2012 - 19:35

Нет нет, я всё верно написал.

#7 Onlink

Onlink

    Мастер

  • Старая гвардия
  • PipPipPipPip
  • 1 035 сообщений
274
  • Изгрязи в князи!

Отправлено 21 Январь 2013 - 14:32

Просмотр сообщенияMiXa сказал:

$metatags .= <<
%3Clink%20rel%3D%22canonical%22%20href%3D%C2%BB%7B%24full_link%7D%C2%BB%3E HTML;
У меня DLE 9.0
Добавил ваш вариант, вышло:
<link rel="canonical" href=»URL»>
»URL» - что это за "кавычки" такие? Может там стоит поставить обычные ""?
Попробуй купить дешево вечные ссылки. А здесь недорогие тематические вечные ссылки. Ссылки на sape.ru все еще способны вывести в ТОП.

#8 Blaster

Blaster

    Новенький

  • Старая гвардия
  • Pip
  • 9 сообщений
2

Отправлено 21 Январь 2013 - 14:45

Просмотр сообщенияOnlink (21 Январь 2013 - 14:32) писал:

У меня DLE 9.0
Добавил ваш вариант, вышло:
<link rel="canonical" href=»URL»>
»URL» - что это за "кавычки" такие? Может там стоит поставить обычные ""?
Попробуйте вариант описанный мной, должно работать и на 9.0.

#9 Onlink

Onlink

    Мастер

  • Старая гвардия
  • PipPipPipPip
  • 1 035 сообщений
274
  • Изгрязи в князи!

Отправлено 21 Январь 2013 - 15:15

Просмотр сообщенияBlaster (21 Май 2012 - 14:17) писал:

MiXa, не совсем верное решение.

Решение для DLE 9.5-9.6

Открываем файл /engine/modules/show.full.php и находим:
  } else {
  
   $full_link = $config['http_home_url'] . "index.php?newsid=" . $row['id'];
   $print_link = $config['http_home_url'] . "engine/print.php?newsid=" . $row['id'];
   $short_link = "";
[color=#ff0000]   $link_page = "";
   $news_name = "";[/color]

  }

В версии 9.0 есть только такое:
} else {
            
            $full_link = $config['http_home_url'] . "index.php?newsid=" . $row['id'];
            $print_link = $config['http_home_url'] . "engine/print.php?newsid=" . $row['id'];
            $short_link = "";
        
        }

В общем сделал все по вашей инструкции. Все работает, тег добавляется! Хотя у меня все равно уже хак есть, который при "порче" URL статьи перенаправляет юзера на оригинальный адрес!
http://site/123-novost.html - Оригинал новости
http://site/123-novos22222222LOLt.html - это дубль, который работал раньше и открывал новость, т.к. ID тот же остается.
Мой хак перенаправляет юзера с 2 варианта URL на первый, то есть дублей и так никаким боком не вылезет.
Но все же ваше решение так же поставил!

з.ы.А если есть сторонний модуль Каталог например какой-то. В нем у меня не отображается каноницел для страниц с описанием товара? Как ы этом случае быть никто не подскажет?
Попробуй купить дешево вечные ссылки. А здесь недорогие тематические вечные ссылки. Ссылки на sape.ru все еще способны вывести в ТОП.

#10 Onlink

Onlink

    Мастер

  • Старая гвардия
  • PipPipPipPip
  • 1 035 сообщений
274
  • Изгрязи в князи!

Отправлено 21 Январь 2013 - 16:03

Вот еще нашел материал по поводу тех самых Дублей в DLE. Статья хорошая, пользовался!
Попробуй купить дешево вечные ссылки. А здесь недорогие тематические вечные ссылки. Ссылки на sape.ru все еще способны вывести в ТОП.

#11 dulger

dulger

    Страх — это путь на темную сторону.

  • Участник
  • PipPip
  • 134 сообщений
270

Отправлено 22 Март 2013 - 15:55

Где-то апа 2 мой сайт глухо не индексируется Яшей, раньше быстробот съедал свежие странички в течении дня. В общем я забеспокоился и решил выяснить причину пока что самостоятельно без помощи службы поддержки. Сегодня в вебмастере Яндекса в исключенных страницах заметил более 200 страниц с пометкой "Документ является не каноническим". Причем эти страницы не являются дублями, все тщательно перепроверил, в общем он их выпилил с корнем из выдачи.

Вот что Яша пишет в пояснении:

Цитата

В коде документа в тэге <link> содержится параметр rel="canonical", содержащий канонический адрес страницы, по которому она индексируется роботом. Как правило, тег <link> с атрибутом rel="canonical" прописывают на дублирующих страницах сайта, в этом случае ничего исправлять не требуется.
Если страницы дублями не являются и должны индексироваться роботом, то вам необходимо убрать атрибут из их исходного кода. Более подробную информацию об использовании rel="canonical" вы можете прочитать на следующей странице нашей Помощи.
Также в этом разделе могут присутствовать страницы, содержащие в коде документа мета-тег <meta name="fragment" content="!">, и поэтому вместо них индексируются html-версии.

И да, началось всё это с того момента как я решил добавить canonical в код сайта. даже дата савподает , которая указана в вебмастере. До этого максимально избавился от дублей на сайте, и чёрт дёрнул меня добавить этот canonical.

Сегодня удалил его с сайта, теперь буду ждать когда статьи на которые было убухано очень много времени вернутся в индекс... если они вообще вернутся.
Может у кого такая же проблема?

Сообщение отредактировал dulger: 22 Март 2013 - 15:55


#12 Onlink

Onlink

    Мастер

  • Старая гвардия
  • PipPipPipPip
  • 1 035 сообщений
274
  • Изгрязи в князи!

Отправлено 23 Март 2013 - 15:44

dulger,
Странно, у меня наоборот все! Только что зашел в ВМ и увидел, что Яша исключил всего лишь 1 страницу, которая действительно является дублем.
Статья находится по адресу: сайт.ру/раздел/категория/статья1.html
исключенная страница: сайт.ру./БЛАБЛАБЛА/категория/статья1.html
Возможно вы что-то не так сделали, проверьте внимательно свой код!
з.ы.У меня DLE 9.8
Попробуй купить дешево вечные ссылки. А здесь недорогие тематические вечные ссылки. Ссылки на sape.ru все еще способны вывести в ТОП.

#13 dulger

dulger

    Страх — это путь на темную сторону.

  • Участник
  • PipPip
  • 134 сообщений
270

Отправлено 23 Март 2013 - 17:14

Да ошибка в коде, у меня каким-то образом на разных браузерах canonical помечены разные страницы, то есть в хроме:
<link rel="canonical" href="http://saite.ru/industry/143-krovavoe-proizvodstvo.html">

а если посмотреть код в опере она ведёт на другую страницу:
<link rel="canonical" href="http://saite.ru/finance/119-samye-neobychnye-monety-mira.html">

Вот такая блин хрень :) Ладно буду разбираться :)

Сообщение отредактировал dulger: 23 Март 2013 - 17:15


#14 Fitsh

Fitsh

    Юзер

  • Участник
  • PipPipPipPipPip
  • 1 733 сообщений
1 393

Отправлено 23 Март 2013 - 17:37

Интересно, почему через $metatags .= <<<HTML

По-идее можно так сделать (быстрее работает)

$metatags .= '<link rel="alternate" type="application/rss+xml" title="{$rss_title}" href="{$rss_url}" />';


#15 Onlink

Onlink

    Мастер

  • Старая гвардия
  • PipPipPipPip
  • 1 035 сообщений
274
  • Изгрязи в князи!

Отправлено 23 Март 2013 - 18:35

Вы каким способом добавления Canonical пользовались? У меня в Опере, Хроме и Лисе все нормально работает, ссылка везде одна.
Я воспользовался методом http://webimho.ru/to...40/#entry28273 Этот способ работал на DLE 9.0, так же он работает и на DLE 9.8 (проверил лично)
Попробуй купить дешево вечные ссылки. А здесь недорогие тематические вечные ссылки. Ссылки на sape.ru все еще способны вывести в ТОП.

#16 FireBlooD

FireBlooD

    Мастер

  • Активный участник
  • PipPipPipPip
  • 1 294 сообщений
660
  • ИзМагадана, Белгорода, Воронежа, Чехова, Москвы, Подольска...

Отправлено 24 Март 2013 - 11:15

Просмотр сообщенияOnlink (21 Январь 2013 - 15:15) писал:

В общем сделал все по вашей инструкции. Все работает, тег добавляется! Хотя у меня все равно уже хак есть, который при "порче" URL статьи перенаправляет юзера на оригинальный адрес!
http://site/123-novost.html - Оригинал новости
http://site/123-novos22222222LOLt.html - это дубль, который работал раньше и открывал новость, т.к. ID тот же остается.
Мой хак перенаправляет юзера с 2 варианта URL на первый, то есть дублей и так никаким боком не вылезет.
Но все же ваше решение так же поставил!

Так это без хака делается, в ДЛЕ настройка ЧПУ - там есть такая штука... Я поставил - прикольно - как не введи - редирект на правильный урл будет. Называется в настройках системы: Обрабатывать неверные URL ЧПУ

И я не много не понял - ты боишься что краткая новость дублирует частично полную? Там можно давать разные описания, по-моему вообще классная штука: Ведь краткая отображается в категории - пиши ее по ключевикам категории, а полная - по ключевикам соответствующим уже.
Мгновенная индексация: всего за 0,03$ за страничку!
Качественное усиление ссылок: цена 2р. за клик!
Дешевые лайки, репосты, подписчики: ссылка вот тут!

#17 Onlink

Onlink

    Мастер

  • Старая гвардия
  • PipPipPipPip
  • 1 035 сообщений
274
  • Изгрязи в князи!

Отправлено 24 Март 2013 - 13:49

Просмотр сообщенияFireBlooD (24 Март 2013 - 11:15) писал:

Так это без хака делается, в ДЛЕ настройка ЧПУ - там есть такая штука... Я поставил - прикольно - как не введи - редирект на правильный урл будет. Называется в настройках системы: Обрабатывать неверные URL ЧПУ

И я не много не понял - ты боишься что краткая новость дублирует частично полную? Там можно давать разные описания, по-моему вообще классная штука: Ведь краткая отображается в категории - пиши ее по ключевикам категории, а полная - по ключевикам соответствующим уже.
Тогда я был еще на 9.0, в ней такой опции не было. Я на 9.8 только вот переехал, по этому не видел всех новых фишек.
У меня в кратком описании не более 10% от все статьи. В этом случае можно не говорить о дублировании контента :) Но все же сейчас я пишу в краткую новость другой текст, а не тупо кусок полной новости. Так что это действительно правильным будет.
Попробуй купить дешево вечные ссылки. А здесь недорогие тематические вечные ссылки. Ссылки на sape.ru все еще способны вывести в ТОП.

#18 FireBlooD

FireBlooD

    Мастер

  • Активный участник
  • PipPipPipPip
  • 1 294 сообщений
660
  • ИзМагадана, Белгорода, Воронежа, Чехова, Москвы, Подольска...

Отправлено 24 Март 2013 - 20:53

У меня 9.7 ДЛЕ, до 9.8 пробовал обновить - БД не востанавливается, сам не разобрался, откатил, 9.7 вполне устраивает =)
Мгновенная индексация: всего за 0,03$ за страничку!
Качественное усиление ссылок: цена 2р. за клик!
Дешевые лайки, репосты, подписчики: ссылка вот тут!

#19 Onlink

Onlink

    Мастер

  • Старая гвардия
  • PipPipPipPip
  • 1 035 сообщений
274
  • Изгрязи в князи!

Отправлено 24 Март 2013 - 21:00

Просмотр сообщенияFireBlooD (24 Март 2013 - 20:53) писал:

У меня 9.7 ДЛЕ, до 9.8 пробовал обновить - БД не востанавливается, сам не разобрался, откатил, 9.7 вполне устраивает =)
Да, а я вот с 9.0 на 9.8 прыгал. Сейчас включаю PHP5.4, модуль программист обновил. Вроде бы все должно работать. Мароки конечно не мало, времени потратил... Но решение, которое предоставил Blaster я так же поставил :)
Попробуй купить дешево вечные ссылки. А здесь недорогие тематические вечные ссылки. Ссылки на sape.ru все еще способны вывести в ТОП.

#20 Ku-Klux

Ku-Klux

    Бывалый

  • Участник
  • PipPip
  • 107 сообщений
39

Отправлено 24 Апрель 2013 - 17:13

Просмотр сообщенияMiXa (28 Март 2012 - 19:03) писал:

В DLE canonical очень необходимая вещь, а то дубли в ДЛЕ мучают маманегорюй.
Делаем так:
В корневом файле index.php вносим изменения

После строки:
if ($dle_module == ‘showfull’) {

Добавить:
$metatags .= <<<HTML

<link rel="canonical" href=»{$full_link}»>
HTML;

Вуаля - полная новость http://www.example.com/fullnews получила rel=canonical

ссылку укажи где взял. это не твоя работа, это очень старый вариантв котором поменялось несколько слов.



Похожие темы


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных



© 2019 SMO&SEO форум «WEBIMHO» — продвижение и создание сайтов, интернет-маркетинг

По вопросам рекламы на форуме и цены на рекламу
Все материалы SEO форума разрешены к копированию только с установкой гиперактивной ссылки на webimho.ru,
тем, кто этого не сделает, мы оторвем руки и ноги и поменяем местами,
а когда выйдем из тюрьмы, опять оторвем и опять поменяем.


Россия, г. Москва

Мы в соцсетях: twitter | вконтакте | facebook | livejournal