Как отключить трекбеки на самого себя в WordPress
Всем привет! Сегодня я хочу рассказать о небольшом хаке, который позволит владельцам wordpress блогов отключить трекбеки на самих себя. Для тех кто не знает, что такое трекбек, вкратце расскажу об этом механизме.
Когда вы пишете статью на своем сайте (сайте А), и в ней ставите ссылку на запись с другого сайта (сайта Б), то ваш сайт А посылает сигнал сайту Б, и сайт Б размещает в комментариях к этой записи (на которую вы сослались) ссылку на вашу статью, в которой вы упомянули сайт Б. Происходит что-то вроде взаимного пиара.
Сам по себе такой механизм как трекбек не так уж и плох, так как позволяет владельцам молодых сайтов получить немного трафика и траста на свой сайт. Но иногда возникаю моменты, когда вы ссылаетесь на свои же статьи, тогда в комментариях к вашим статьям начинаю появляться трекбеки на самих себя.
Сначала я просто удалял эти трекбеки каждый раз после публикации новых записей на блоге, но потом мне надоело делать каждый раз эту работу и я начал искать выход из этой ситуации.
Выход оказался простой, нужно добавить небольшую функцию в файл functions.php, который находится в папке с темой.
Вот эта функция:
function disable_self_ping( &$links ){ $site_url = get_option( 'home' ); foreach ( $links as $key => $val ) if ( strpos( $val, $site_url ) !== false ) unset($links[$key]); } add_action( 'pre_ping', 'disable_self_ping' );
Вставьте ее в конец файла functions.php перед закрывающимся тегом ?> (!!!) и сохраните файл.
Все, теперь трекбеки на самих себя вас больше беспокоить не будут 😉 .