Онлайн заработок, создание и монетизация сайтов, веб-разработка, SEO и SMO продвижение, фриланс, партнерки, полезные сервисы вебмастерам, блоггинг.

Главная » WordPress » Управление блогроллом в WordPress: создание ссылок и сниппеты

Управление блогроллом в системе WordPress

Сегодня, как и обещал, немного о реализации блогролла под WordPress. Что это за штука такая и зачем нужна — читаем в предыдущей заметке: Все о блогролле — зачем и как лучше его делать.

Самый простой способ добавить данный элемент на сайт — это конечно правка того или иного php файла исходников установленной темы WordPress. Но этот не очень хороший метод, тем более что в системе (по крайней мере — точно в версии 2.3.1) для этих нужд есть специальный пункт настроек — Blogroll Management.

Блогролл ссылки

Для начинающих блоггеров или тех, кто не смог (не захотел) разбираться немного поясню его назначение и возможности. Итак здесь вы можете добавлять свои ссылки для блогролла. Состоит пункт из 4х закладок:

Manage Blogroll (см. изображение выше) — позволяет просмотреть все ссылки с возможностью выборки по определенным категориям или типом сортировки. Здесь же можно перейти к редактированию или удалить одну и более ненужных ссылок.

Add Link — пункт для добавления новых ссылок в блогролл. Здесь можно задавать как базовые свойства — имя, адрес и описание, так и продвинутые — изображение, адрес RSS потока, рейтинг и небольшие заметки. Кроме того, есть возможность использовать настройки в правой колонке окна, где происходит присваивание категории, указание для ссылки открываться в текущем или новом окне, а также обычное задание ее видимости (отображается/скрыта).

Добавление ссылки в блогролл

Import Links — импорт из OPML файла. Честно говоря, не особо в курсе что это такое, какой-то импорт:)

Categories — в блогролле можно группировать ссылки по категориям. В этой закладке мы получаем возможность как создавать новые, так и управлять существующими категориями.

Вообще, судя по возможностям данного механизма, можно смело организовывать не только блогролл, а и небольшой каталог полезных ссылок с разбиением на категории, описанием и изображением для каждой записи. Причем управлять этим списком ссылок получится достаточно легко с использованием рассмотренного раздела Blogroll Management.

Что касается непосредственно моего блога, то я использую для отображения всего одну категорию — «Интересные блоги». Кстати, ее название автоматически отображается в шаблоне в качестве заголовка всего блока. Далее ссылки расположены по рейтингу. Я уже говорил, что для каждой ссылки можно указать некое значение рейтинга. Именно его я использую для сортировки ссылок в блогролле — наиболее активные и читаемые мною блоги находятся выше. Значения оценок изменяются от 1 (максимально высокая позиции) до 9 (минимальная).

Теперь немного слов о том, как я добился такого эффекта. Стандартными настройками, увы, обойтись не получилось. А установленная в блоге тема не поддерживает виджеты, посему все правки производились в коде. Вполне вероятно, что, используя какой-то виджет, вы запросто сможете указать тип и порядок сортировки. А пока рассмотрим мой вариант.

Для работы с блогроллом и ссылками используется следующая функция:

<?php wp_list_bookmarks(‘arguments’); ?>

Полное описание всех аргументов можно найти здесь. С их помощью можно настраивать много всяких особенностей поведения данного блогка — визуальных, логических, для категорий и заголовков и т.п. Каждый следующий аргумент отделяется знаком — &. Синтаксис для аргумента — название_аргумента=значение_аргумента.

Общий алгоритм действий довольно простой:

1. Открываем нужный нам файл темы WordPress. Как правило, блогролл находится в боковой колонке — что-то типа sidebar.php. Доступ к файлу имеем либо по ФТП, либо из админки непосредственно.

2. Находим в файле нужное место, где уже есть данная функция (или просто место куда мы хотели бы ее вставить) и добавляем нужный код. Для сортировки по рейтингу достаточно написать:

<?php wp_list_bookmarks(‘orderby=rating’); ?>

Если вы, например, хотите выводить еще значения рейтинговых оценок, можно использовать строку:

<?php wp_list_bookmarks(‘orderby=rating&show_rating=1’); ?>

Как видим, ничего сложно нет. Если возникли какие-то вопросы по данной теме — пишите в комментариях, на почту или в аську.

Теперь рассмотрим еще один небольшой прикол с менеджером ссылок — Blogroll Management. Если мы определились с сортировкой по рейтингу, то неплохо было бы его видеть постоянно в самой админке. Кликать на каждую ссылку и проверять соответствующее значение поля как-то несолидно, и долго к тому же. В то же время в самом менеджере подобного поля нет. Попробуем изменить эту ситуацию.

1. Находим в исходниках админки (папка wp-admin) файл link-manager.php. Копируем себе на комп для правки, предварительно сделав резервную копию на всякий случай.

2. Находим в коде блок:

$link_columns = array(
‘name’ => ‘<th width=»15%»>’ . __(‘Name’) . ‘</th>’,
‘url’ => ‘<th>’ . __(‘URL’) . ‘</th>’,
‘categories’ => ‘<th>’ . __(‘Categories’) . ‘</th>’,
‘rating’ => ‘<th>’ . __(‘Rating’) . ‘</th>’,
‘rel’ => ‘<th style=»text-align: center»>’ . __(‘rel’) . ‘</th>’,
‘visible’ => ‘<th style=»text-align: center»>’ . __(‘Visible’) . ‘</th>’,
‘action’ => ‘<th colspan=»2″ style=»text-align: center»>’ . __(‘Action’) . ‘</th>’,
);

Туда добавляем строку для отображения колонки рейтинга (выделена жирным шрифтом).

3. Далее находим блок переключения case, который начинается со строчки

switch($column_name) { ….

В нем по аналогии с полем rel или visible добавляем код для рейтинга:

case ‘rating’:
?><td><?php echo $link->link_rating; ?><br /><?php
break;

Вставляйте код внимательно дабы не повредить конструкцию.

4. Сохраняем файл и перезаливаем его на ФТП. Заходим в админку, открываем наш менеджер ссылок и любуемся рейтингом ссылок.

Кстати, одинаковые по рейтингу ссылки, насколько я понял, дальше сортируются по наименованию. Но это, в принципе, не столь существенно, поскольку можно выставить оценки от 1 до 9ти. Всем должно хватить.

28.11.07

Категории: WordPress.

Теги: , , , , ,

7 Comments
  1. Виктор

    Хорошая статья, познавательная и информативная.

  2. Sergoff

    Пасиб за доступный язык без воды. 5 балов.

  3. Поисковый робот

    Попробовал сделать по описанию, оказалось что в моей теме за вывод ссылок в блогролле отвечает совершенно другая функция: php get_link, а не php wp_list_bookmarks.
    Попробовал даже заменить имеющуюся функцию на вашу и всё пропало :)
    Так что сортировка по рейтингу не получилась.

  4. Tod

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

  5. Поисковый робот

    У меня вообще чудеса: поставил плагин My Link Order, он тоже не сработал, хотя пишет, что всё нормуль. Видимо, у меня нестандартная функция всё-таки.

  6. fel1ow

    Доброго времени суток. Есть get_links, вот ссылка http://codex.wordpress.org/Function_Reference/get_links Но эта функция устарела и, похоже, более не поддерживается. Функция get_links была заменена более новой wp_list_bookmarks() вот ссылка http://codex.wordpress.org/Template_Tags/wp_list_bookmarks Если ваш WordPress не поддерживает\видит функции wp_list_bookmarks() значит у вас достаточно или даже очень старая версия WordPress. Мои ссылки на англоязычную документацию. Хотите на русском — вот хороший сайт http://wp-kama.ru/function/wp_list_bookmarks Всего доброго.

  7. Александр

    Спасибо за статью!)

Добавить комментарий

Ваш e-mail не публикуется. Обязательные поля помечены *
Если вы комментируете впервые, то текст будет отправлен на модерацию.