30марта
2007

Как разместить ссылки только на морде?

Мои клиенты и просто люди, обращающиеся с вопросами по поводу работы с WordPress довольно часто интересуются одним и тем же вопросом...

Как заставить WordPress показывать блок ссылок только на главной странице (у сеошников это принято обзывать ссылками с морды)?

Устроим-ка сегодня сбычу мечт для всех счастливых обладателей сайтов, работающих на WordPress, которые жаждут распродать свои мордастые рекламные площадки или забить их ссылками на свои веб-ресурсы!

Итак...

Для того, чтобы блок ссылок (даже с описанием, что сейчас весьма актуально для SE) показывался только на главной странице и нигде больше не нужно абсолютно никаких плагинов!

Эту затею можно реализовать, задействовав стандартные функции WordPress и чуток своего воображения (куда ж без него). Отмечу, что воображение нам просто необходимо, иначе — беда, ссылки выводиться не будут, хоть тресни...

Ссылки без описания толку приносят мало в плане seo, поэтому они нам не интересны. Хотя, кому приспичит, тот сможет проследить между строк незатейливый путь, подсказывающий как обрезать бедным ссылкам их описание.

Решено: озадачиваемся выводом ссылок с кратким описанием на морде сайта. Для этого нам понадобится функция <?php get_links(); ?> и вкладочка Ссылки в панели администрирования WordPress. Не забываем ещё про воображение.

По дефолту функция <?php get_links(); ?> выводит довольно ужасные ссылки, однако... У этой функции есть ряд замечательных параметров, поигравшись с которыми внешний вид ссылок можно сделать просто великолепным!

Путём хитрых преобразований получаем следующий вариант:

  1. <?php get_links(1, '&bull;', '<br />', ' &mdash; ', show_description); ?>

Что у нас появилось в скобках:

  • циферка впереди — это ID-категории ссылок, содержимое которой будет показываться на главной странице;
  • далее между двумя апострофами можно ввести html-тег, который будет показываться, до каждой ссылки, у меня это точка;
  • затем опять же между двумя апострофами можно ввести html-тег, который будет показываться после каждой ссылки, у меня это перехд на новую строку;
  • между следующими двумя апострофами вставляется html-тег, который будет между ссылкой и её описанием, у меня это тире;
  • ну и, в конце концов, выводим описание для каждой ссылки.

Другие параметры данной функции для оформления и преобразования вида ссылок вы можете подглядеть вот здесь — английский знать необязательно, если только чуток. Хотя можно и чисто логически догадаться о назначении каждого атрибута.

Как настроить внешний вид ссылок выяснили. Теперь кульминация: заставляем их показываться только на главной странице сайта.

Во-первых, указаную выше функцию надо вставить в какой-нибудь шаблон (sidebar.php, footer.php или любой другой в зависимости от того, где вы хотите поиметь ссылки).

Во-вторых, сверху данной функции нужно вставить следующую строчку php-кода:

  1. <?php if ( (is_home()) && !(is_page()) && !(is_single()) && !(is_search()) && !(is_archive()) && !(is_author()) && !(is_category()) && !(is_paged()) ) { ?>

а снизу

  1. <?php } ?>

Осталось только сходить в админку, выбрать вкладку Ссылки и добавить нужные урлы сайтов и описания к ним. Кстати, решить судьбу ссылки — показывать её или нет — здесь тоже можно, причём не удаляя её совсем (актуально, когда заказчик задерживает оплату).

Вот какие чудеса может сотворить ваше воображение! ;) Предостерегу особо впечатлительных — миллион ссылок на морде сайта вешать не стоит, это извращенство. Больше, чем от 10 толку не будет, только вред.

Эта запись опубликована в Пятница, 30 марта 2007 г. в рубрике Стандартные опции.

автор: AlexPro