rel=“canonical” для БЛОГ Есть решение

Здравствуйте, может кто знает, как прописать rel=“canonical” для страниц блога, а то в "Яндекс Вебмастер" все страницы блога являются неканоническими и исключаються из поиска, а в поиске только главная /blog/, или есть какой другой вариант решения проблемы?

7 ответов

  • 1
    replicant 17 января 2022 14:23 # Решение

    Может быть есть и плагины на эту тему, но даже не искал их. У себя сделал примерно так.

    В шаблоне post.html Блога добавил в самом начале текста строку

    {assign var=post_canonical value="`$post.link`" scope="global"}

    А в шаблоне index.html перед закрывающим тегом </head>

    {if $action == 'post'}
    <link rel="canonical" href="{$post_canonical}" />
    {/if}

    $post.link в отличие от $post.url учитывает формат адресов записей (год/месяц/день)

    • +1
      Leva Leva 9 ноября 2022 15:25 #

      Спасибо за решение, а можно как то код допилить что бы главная страница блога и страницы пагинации были с canonical ?

      • +2
        replicant replicant 10 ноября 2022 17:11 #

        Можно. В index.html в <head>...</head> прописать что-то типа

            {if $wa_app == 'blog'}
                {if $wa_app_url == $wa->currentUrl(false, true)}
                    <link rel="canonical" href="{$wa->domainUrl()}{$wa->currentUrl(false, true)}" />
                {/if}
            {/if}

        Это точно канонизирует главную и всю пагинацию с get параметром page=n завернет на каноническую главную, оставив, если у вас используются, только link prev-next в HTML при переходах по страницам публикаций блога.

        Страницам пагинации оптимально проставить в title окончание вида Страница: N. Это можно сделать с помощью плагина "Мета-теги для Блога".

  • 1
    Олег 17 января 2022 21:00 #

    Спасибо большое, попробую. У Вас корректно этот код работает, нет не каких ощибок?

    • +1
      replicant replicant 18 января 2022 10:49 #

      Конечно работает. Собственно там и места нет для возможной ошибки. Если только опечатку допустите при внедрении у себя. Но это же проверяется мгновенно тут же по исходному коду страницы. Все предельно просто.

  • 1
    Олег 18 января 2022 12:52 #

    Круто, заработало, спасибо большое за помощь!

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите