• Пытаюсь решить вопрос дублирующегося контента и не могу понять некоторые моменты. Можете подсказать?
    Адреса, что ниже дублируют пост или являются якорями?
    site.org/postname1/#respond
    site.org/postname1/#comments
    site.org/postname1/comment-page-1/#comments
    site.org/postname1/comment-page-2/#comments

    Хотелось бы узнать о всех возможных (стандартных) якорях страницы или тег «more» — это единственный?
    Подскажите: где можно почитать об этом?

Просмотр 7 ответов — с 1 по 7 (всего 7)
  • Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Различных адресов здесь три:

    • site.org/postname1/
    • site.org/postname1/comment-page-1/
    • site.org/postname1/comment-page-2/

    С точки зрения поисковых систем все эти адреса идентичны. У каждой записи есть «канонический» URL, который позволяет избежать дублирования. Он добавляется в блок <head> функцией wp_head() в файле header.php.

    Подробности:

    WordPress автоматом проставляет rel=»canonical» в таких урлах?

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

    Ну вообщем про «canonical» я и так знал теорию. Меня интересовал вопрос якорей в WordPress. Кроме тега «more» есть еще якоря?

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    WordPress автоматом проставляет rel=»canonical» в таких урлах?

    Да, если в header.php есть вызов wp_head() (в корректно написанных темах он есть, т.к. используется и для других целей, в том числе для работы плагинов).

    Я хочу, чтобы такие страницы попали в индекс поисковых систем в соответствии со своим контентом.

    Можно добавить фрагмент в functions.php активной темы, чтобы страницы комментариев имели собственный «канонический» URL:

    function rel_canonical_paged_comments() {
    	echo "<link rel='canonical' href='http://{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}' />\n";
    }
    
    function replace_rel_canonical() {
    	if ( is_single() && get_query_var( 'cpage' ) >= 1 ) {
    		remove_action( 'wp_head', 'rel_canonical' );
    		add_action( 'wp_head', 'rel_canonical_paged_comments' );
    	}
    }
    add_action( 'wp', 'replace_rel_canonical' );

    Или вообще отключить функцию rel_canonical():

    remove_action( 'wp_head', 'rel_canonical' );

    Кроме тега «more» есть еще якоря?

    #comments и #respond, которые вы привели выше, прокручивают страницу к комментариям и к форме ответа.

    Если оставить настройки движка по умолчанию, то на какие еще виды страниц распространяется функция rel_canonical()?

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    На все, удовлетворяющие условному тегу is_singular(), — т.е. записи, страницы и вложения.

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Можно добавить фрагмент в functions.php активной темы, чтобы страницы комментариев имели собственный «канонический» URL

    В WordPress 3.5 страницы комментариев по умолчанию индексируются:
    http://core.trac.wordpress.org/ticket/21579

Просмотр 7 ответов — с 1 по 7 (всего 7)
  • Тема «Дублирующийся контент» закрыта для новых ответов.