16.10.13, 16:26
3 комментарий
  DLE Хаки

Исключаем дубли или Rel='canonical' для полной новости

В этой статье подробно описано как следует добавлять тег rel="canonical" для полной новости, чтобы исключить дубли.


Установка, способ №1:
1. Открываем файл /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 = "";
}


Выше добавляем:

$canonical = $full_link;


2. Открываем файл /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;


Готово!

Установка, способ №2 (более простой, для тех у кого не выводится Url полной новости):
В корневом файле index.php вносим изменения, после строки:

if ($dle_module == ‘showfull’) {


Добавить:

$metatags .= <<<HTML

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


Готово!

Теперь полная новость http://site.ru/fullnews.html получила rel=canonical.

Версия DLE: 9.6-10.0

Комментарии

  1. yreei 18 ноября 2013 11:21                    

    а как после установки хака будет отображаться ссылка

  1. ToNik Пользователь offline 18 ноября 2013 12:27                    

    yreei,
    А почему нет?

  1. sneiks 23 апреля 2015 17:06                    

    На дле 10.4 подаидёт?

    Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in способ №2

    oba varianta ne rabotajut na dle 10.4

Напишите своё мнение