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

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

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

Казалось бы, сделать это легко, достаточно сформировать ссылку вида [code inline=”yes”]http://ваш-блог/пост#more-ID_поста. Однако тут нужно учитывать, что в некоторых постах нет тега more, и поэтому ссылка такого вида будет неточной, да и ненужной. Тут нужен другой подход – предварительно проверять, присутствует ли тег more в посте или нет.

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

function remove_more_link() { return ''; }
add_filter('the_content_more_link', 'remove_more_link');

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

post_content, '')) { ?><a href="#more-" class="more-link">Читать далее

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

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

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

if ( have_posts() ) : while ( have_posts() )
...
endwhile

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

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

Оставьте первый комментарий

Оставить комментарий

Ваш электронный адрес не будет опубликован.


*