n-wp.ru — блог о WordPress

Как вывести ссылку «Читать далее» в любом месте записи

Пример кода, позволяющего выводить в любом месте записи ссылку «Читать далее». Ссылка выводится только если в содержимом записи присутствует тег more, и может иметь индивидуальное размещение и оформление.

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

Обычно ссылка «Читать далее» формируется автоматически функцией the_content, и отображается, как я уже писал, в области разделения текста специальным тегом [code inline=»yes»]

. Но иногда дизайн блога требует вывода этой ссылки в другом месте — справа, слева, под текстом, вообще в отдельной панели.

Казалось бы, сделать это легко, достаточно сформировать ссылку вида [code inline=»yes»]http://ваш-блог/пост#more-ID_поста

. Однако тут нужно учитывать, что в некоторых постах нет тега more, и поэтому ссылка такого вида будет неточной, да и ненужной. Тут нужен другой подход — предварительно проверять, присутствует ли тег more в посте или нет.

Для начала нужно избавиться от стандартной ссылки «Читать далее». Сделать это можно с помощью фильтра, добавленного в файл functions.php:

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

Этот код использует две функции:

  • the_permalink — возвращает прямую ссылку на пост
  • the_ID — возвращает ID поста

Следует учитывать, что код нужно вставлять в цикл вывода записей, иначе он не сможет определить ID и ссылку поста. Нас интересует размещение подобной ссылки в записях на главной странице (или в различных архивах). Значит вставлять этот код нужно внутри цикла

Код ищет в содержимом поста специальный тег more, и если он есть, то выводит ссылку вида [code inline=»yes»]http://ваш-блог/пост#more-ID_поста

в нужном вам месте. Вы можете придать ссылке индивидуальное оформление, используя в css класс more-link.

tiaurus

Являюсь создателем n-wp.ru — блога о WordPress для новичков. Мне интересно многое, поэтому еще я сделал 123-box.ru — блог о программах для Windows, и tiaurus.info — блог о красоте.

Комментировать