X
  • Дизайн та розробка сайту
  • Дизайн і створення сайтів. Розробка тем для WordPress. Створення Landing Page.
  • office@gnatkovsky.com.ua
  • @vgnat
  • Написати мені
Замовити послугу

Убираем три точки или кнопка читать дальше после тизера the_excerpt – WordPress

Приклад
  • 2024-10-31
  • 8158 переглядів

  • Дизайн та розробка сайту

Доброго времени суток 🙂
На главной странице WordPress, а также на странице категорий, архивах, странице тегов в цикле выводятся записи подряд. Записи выводятся целиком или частично, если вы используете тег more чтобы показать только часть записи. Выводится текст записи с помощью функции

<?php the_content(); ?>

Многие веб мастера используют вместо такой функцию немного другую, а именно
функцию

Кнопка Читать далее
<?php the_excerpt()?>

Данная функция выводить тизер - часть текста, вне зависимости используете ли Вы тег more или нет. Это очень удобно, У Вас во всех тизерах одинаковое количество слов и все записи выглядят одинаково на главной.

Чтобы выставить количество слов в тизере смотрите этот УРОК

Данным способом пользуюсь и я. Мне было лень в ручную отмечать и примерно угадывать какой величины сделать тизер благодаря тегу more .

Но в данной функции есть маленький нюанс. В конце текста по умолчанию ставится вот это [...] Многим это не нравится, для этого и применяем следующий не хитрый способ.
Открываем в папке Вашей темы файл functions.php и допишем в него следующий код:

function new_excerpt_more($more) {
	   global $post;
	return '';
}
add_filter('excerpt_more', 'new_excerpt_more');

Данная функция не убирает три точи, а просто заменяет на то что вы укажите. В третьей строке return ''; между скобок 'Сюда вставляем что хотим'. В примере там ничего нет, поэтому три точки просто пропадут.

Но если туда вставить например ссылку на запись, то мы решим вторую задачу - это кнопка Читать дальше

Что надо сделать для этого?

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

<a class="more_link" href="'. get_permalink($post->ID) . '">Читать дальше</a>

В результате чего получим вот такой вот код в целом:

function new_excerpt_more($more) {
	   global $post;
	return ' <a class="more_link" href="'. get_permalink($post->ID) . '">Читать дальше</a>';
}
add_filter('excerpt_more', 'new_excerpt_more');

Теперь после текста сразу будет кнопка Читать дальше.

Если же кнопку надо разместить как-то по особенному или придать ей стилей, то в коде видно что мы присвоили ссылке класс more_link. Так что просто задайте стили и настройте тот вид, который Вас устроит.

На этом все, спасибо за внимание 🙂

Якщо Вам була корисна моя праця, можете фінансово підтримати сайт або відключити блокувальник реклами, що займе 2 хвилини :)

Хочу підтримати фінансово Хочу відключити блокувальник

Оцініть статтю
  1. 5
  2. 4
  3. 3
  4. 2
  5. 1
Проголосовало: 7, в среднем: 5 из 5
Читайте також

Deprecated: Функція WP_Query викликана з аргументом, який вважається застарілим з версії 3.1.0! Вираз caller_get_posts застарілий. Використовуйте ignore_sticky_posts. in /var/www/vhosts/gnatkovsky.com.ua/gnatkovsky.com.ua/public/wp-includes/functions.php on line 6078