Допустим, у меня есть блог, и я публикую две статьи о разведении черепах в домашних условиях. Дальше я хочу сделать так, чтобы под каждой из статей под заголовком «Ссылки по теме» была ссылка на другую статью. Как мне это сделать?
Вариант со ссылками из текста
Заканчивая вторую статью, я нахожу первую, копирую ее заголовок в конец второй и оформляю его как ссылку, сохраняю. Затем открываю первую в режиме редактирования, копирую заголовок второй в конец первой и оформляю его как ссылку, сохраняю.
Представьте, сколько времени уйдет на то, чтобы связать пять статей.
Вариант с прямым связыванием статей (улучшение предыдущего)
Можно избежать копирования заголовков и оформления их ссылками. Для этого в базе данных придется завести таблицу, которая будет хранить связи между статьями. Действия по связыванию будут выглядеть так: заканчивая третью статью, я выбираю из списка всех статей заголовки первой и второй, сохраняю.
Так я связываю статьи друг с другом в этом блоге
Если связи сделать двусторонними, то редактировать остальные статьи вообще не придется.
Этот способ хорош, однако, при добавлении четвертой статьи придется найти три других, при добавлении пятой — четыре других. То есть никак не учитывается уже существующее связывание статей.
Вариант с категориями
Статьи можно привязывать к категориям, а не друг к другу. В этом случае редактору сайта вообще не нужно делать лишних движений. Побочный эффект — ссылки по теме становятся неконтролируемыми. Так устроены сайты многих интернет-изданий.
Если в блоге есть категория «Разведение черепах», то проблем не возникнет. Если же есть только категория «Домашние питомцы», то содержание блока «Ссылки по теме» будет непредсказуемым.
Вариант с тегами
Если для классификации материалов сайта используются многочисленные теги, то контроль над составом ссылок возвращается. Но все теги не предусмотришь, поэтому придется возиться с привязкой старых статей к новым тегам.
Этот вариант хуже второго (с прямым связыванием статей), поскольку теги — это абстрактная надстройка, следить за которой сложнее, чем за прямыми связями.
Вариант с поиском
Пусть у нас есть поисковый движок с морфологией и ранжированием. В этом случае под каждой статьей можно выводить блок с результатами выдачи, где запросом будет заголовок статьи или те же теги. По похожему принципу показывается контекстная реклама.
Редактору не нужно делать ничего, но контроль над составом ссылок исчезает.
Заключение
С одной стороны — трудоемкие методы с контролируемыми результатами, с другой — методы для ленивых с неточными результатами. По собственному опыту скажу, иногда хочется ставить двусторонние ссылки, а иногда односторонние. Соответственно варианты с тегами, категориями и поиском обладают недостатком — не позволяют ставить односторонние ссылки.
Вопрос знатокам
Предположим, у меня есть форум. Тематика разделов достаточно узкая, темы тегами не размечаются. Я хочу к каждому топику прикрутить блок «Ссылки по теме», состоящий из ссылок на похожие темы этого же форума. Как бы лучше это сделать?
Дмитрий Сергеев, 21 год. Разрабатываю сайты на Drupal и CakePHP.
Алексей Новиков, 27.08.2007 22:31
Сделать это лучше посредством редактора. Редактор — это такой умный человек, который обеспечивает качество.