Задать вопрос
Machez
@Machez
Бу!

Почему может не работать плагин Canonical?

На ModX Revo установил дополнение Canonical (https://docs.modx.com/extras/revo/canonical), внутри секции ... добавил вызов сниппета [[!Canonical]]. Результат работы — пустая строка в html-коде. В чем может быть проблема?
  • Вопрос задан
  • 249 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
qork
@qork
{ background: #F00B42 }
Условие в сниппете не проходит – эта страница не нуждается в link=canonical.
Код
$docId = $modx->resource->get('id');
$query = $modx->newQuery("modSymLink");

$query->select(array(
    'id',
    'class_key',
    'content',
));
$query->where(array(
    'id' => $docId,
    'class_key' => 'modSymLink'
));

if ($query->prepare() && $query->stmt->execute()) {
    $results = $query->stmt->fetchAll(PDO::FETCH_ASSOC);
}

if (!empty($results)) {
    $id = (integer) $results[0]['content'];
    $url = $modx->makeUrl($id, '', '', 'full');
    return '<link rel="canonical" href="' . $url . '" />';
}
return '';

Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы