Deprecated: str_replace(): Passing null to parameter #1 ($search) of type array|string is deprecated in /var/www/jsd/data/www/jsd.ru/plugins/system/admintools/src/Feature/CustomAdminFolder.php on line 83
Информация об авторе в статье блога
Skip to main content

Информация об авторе в статье блога

Чувствую, что решаю тривиальную задачу и опять буду изобретать велосипед, но, таков путь.

Итак, как всем прекрасно известно, статья, имеющая авторство, выглядит авторитетнее, чем безымянная. Что с точки зрения человека, что с точки зрения поисковика. Недаром ещё древнегреческие философы подписывали свои труды, только благодаря этому поисковики их не понижают до сих пор в результатах выдачи.

Ну да, можно просто в конце статьи, последним абзацем написать, что автор Вася Пупкин и вопрос закрыт. Тогда не придется писать эту инструкцию и жажда графомана останется неудовлетворённой, а это грустно.

Цели и задачи:

  • Создать блок с информацией об авторе, внешний вид которого легко изменить в рамках общего шаблона страницы блога.
  • Хранить информацию об авторе в одном, ну, максимум, двух местах, чтобы её было удобно отредактировать по необходимости.
  • Создать в рамках сайта отдельную страницу с подробной информацией об авторе.

Инструментарий традиционный: Joomla + YooTheme. Работаем, как обычно, с динамическими данными.

1. Кто ты, автор?

В первую очередь, нужно подготовить к публикации пакет информации об авторе:

  • Фамилия, имя, отчество (последнее опционально).
  • Nick Name, логин, псевдоним (всё одно и то же, но лучше латиницей).
  • Коротко об авторе – информационная строка о достоинствах автора, которая будет публиковаться по каждой статьёй.
  • Биография автора или что-то на неё похожее – структурированный материал для публикации на странице автора.
  • Фото автора. Квадратное для универсальности. Не ниже 300 px.

2. Создание страницы автора

До начала создания страницы автора стоит создать отдельную категорию материалов для подобного рода страниц, если её ещё нет. В примере это категория «Авторы».

При создании страницы задействуем следующие поля:

  • Заголовок (поле) – Имя, фамилия, отчество.
  • Материал (вкладка) -> Описание (текстовое поле) – Биография автора (В нашем случае составлять биографию помогал ChatGPT, поэтому скопированный результат был сразу отформатирован в MarkDown, что весьма удобно, с этим форматированием биография и опубликована, чтобы не заморачиваться с HTML, а применить для публикации на сайте элемент MarkDown).
  • Материал (вкладка) -> Категория (поле выбора) – «Авторы».
  • Изображения и ссылки (вкладка) -> Изображение вводного текста (область) -> Изображение вводного текста (поле выбора изображения) – Фото автора.
  • Изображения и ссылки (вкладка) -> Изображение вводного текста (область) -> Описание (поле) – Коротко об авторе (ALT изображения проще взять из заголовка, чем дублировать здесь, а вот короткую информацию об авторе особо запихнуть больше некуда).

3. Ссылка на страницу автора

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

В примере я создаю ссылку тип «Блог категории» на категорию «Авторы». Это ещё не ссылка на непосредственную страницу автора. Мне потребуется создать шаблон (или макет, но у меня всё же шаблон) для категории «Авторы» и шаблон для конечной страницы автора, тогда у меня будет нужная ссылка.

Кстати, ссылка создаётся в меню, которое не публикуется на сайте, я хочу разместить эту ссылку «вручную» в нужных местах блога, мне не нужно чтобы ссылка фигурировала в шапке или футере на всех страницах сайта.

4. Шаблон категории «Авторы»

Я разместил в нижней части на страницах категорий и списков статей блога ссылку https://www.howo.pro/authors с анкором «Авторы блога» и перешел по ней на страницу категории «Авторы» в кастомайзере YooTheme, чтобы создать шаблон этой категории.

Поскольку особых изысков тут не требуется, то использую элемент Grid и динамические данные для вывода контента. Сетку создаю размерностью в одну колонку для любого экрана и фото располагаю слева, таким образом получаются горизонтальны плашки. Плашка. У меня пока только одна. 😊

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

5. Шаблон страницы автора

Шаблон страницы автора тоже вполне прост. Он состоит из секции, содержащей фотографию и имя автора с краткой информацией, секции хлебных крошек, и секции биографии, использующей элемент MarkDown, как и говорилось ранее. Все данные в шаблоне, естественно, динамические.

Просмотрев результат создания шаблонов вне кастомайзера, получаем ссылку на конкретную страницу автора, она пригодится позже. В примере это: https://www.howo.pro/authors/khovansky-ivan-andreevich

6. Дополнительные поля для пользователя.

В разделе CMS Joomla «Пользователи» сначала идём в пункт меню «Группы полей» и создаём там группу «Автор», собственно назвать группу можно как угодно, но так понятно.

После этого перемещаемся пунктом меню выше, нам нужны «Поля». Но поля именно пользователя, ни в коем случае не материалов. Нужно создать всего три поля и включить каждое из них в группу «Автор»:

  • Фото автора (media).
  • Коротко об авторе (text).
  • Ссылка на страницу автора (text).

7. Создание пользователя – автора

В Joomla автором статьи является пользователь её создавший, поэтому единственный «легальный» способ сопоставить статью и автора – создать автора в качестве пользователя и затем выбрать его автором нужных статей (для каждой статьи отдельно).

Поэтому идём в меню «Пользователи» и нажимаем кнопку «Создать», заполняем следующие поля:

  • Подробности (вкладка) -> Имя* (поле) – Фамилия, имя, отчество автора.
  • Подробности (вкладка) -> Логин* (поле) – Nick Name или партийная кличка.
  • Подробности (вкладка) -> Пароль (поле) и Подтвердите пароль (поле) – Какую-нибудь нечитаемую криптоустойчивую фигню, лучше довериться браузеру.
  • Подробности (вкладка) -> E-mail (поле) – Что угодно, что подходит по формату. В примере используется комбинация из фамилии автора до собаки и доменного имени сайта после неё.
  • Группы пользователей (вкладка) -> Группы пользователей (область с набором чекбоксов) – выбрать «Author».
  • Автор (вкладка) -> Фото автора (поле выбора изображения) – Выбрать фото автора (в примере хранится в каталоге “images/authors”).
  • Автор (вкладка) -> Коротко об авторе (поле) – Коротко об авторе.
  • Автор (вкладка) -> Ссылка на страницу автора (поле) – Относительную часть ссылки на страницу автора, в примере: /authors/khovansky-ivan-andreevich (можно без лидирующего слеша, так даже, наверное, правильнее).

На скриншоте окно редактирования, а не создания пользователя, но суть одна.

Для редактирования пользователя, возможно, потребуется отключить опцию запрета редактирования пользователей на вкладке усиливающих опций в настройках файрвола AdminTools.

8. Создание блока с краткой информацией об авторе

Осталось в рамках шаблона статьи блога создать блок, который будет отвечать за вывод краткой информации об авторе статьи.

Я использую элемент SubLayout, чтобы создать в нём независимую от остального макета вложенную сетку, в ней размещаю фото, имя автора, краткую информацию об авторе и дату публикации статьи. Тут опять всё на динамических данных. Для вывода изображения и краткой инфы нужно будет использовать дополнительные поля пользователя.

Также дополнительные поля пользователя потребуются, чтобы сделать имя и фотографию ссылками на персональную страницу автора, где можно почитать о нём более подробную информацию.

Ну вот, теперь изобретённый велосипед работает и можно смело крутить все три педали!

  • Создано
    15 октября 2024
  • Последняя правка
    16 октября 2024