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

Анонс будущих записей WordPress

Приклад
  • 2024-11-21
  • 3314 переглядів

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

Доброго времени суток. 🙂

Наткнулся на днях на интересную штучку. Это вывод запланированных заранее записей. У меня на сайте уже была статья о том - Как запланировать публикацию WordPress, как раз таких записей это и касается. Скрипт я проверил, он рабочий, немного изменил и добавил стилей.

Список запланированх записей

Если Вы публикуете записи с задержкой по времени, то можете сделать так, чтобы Ваши посетители смогли увидеть список запланированных публикаций. Довольно таки удобная вещь, чтобы заинтересовать посетителей и возможно заставить их вернутся на Ваш сайт. Это касается тех, кто попал на него впервые или еще не подписан на рассылку или RSS ленту.

Вывод записей осуществляется с помощью функции WP_Query. Для вывода списка, нужно найти на сайте подходящее место, если это сайдбар, то нужно открыть sidebar.php в папке с темой, ну или другой файл в зависимости от того, где будет вставлен скрипт и добавить в нужное для Вас место следующий код:

<ul class="futuregb">
<?php
$todayPosts = new WP_Query('showposts=5&post_status=future');
while($todayPosts->have_posts()){ $todayPosts->the_post();  ?>
<li><a title="<?php the_title(); ?>" href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php } ?>
</ul>

В третьей строке задаем количество записей - showposts=5, которые будут выводится, меняйте в зависимости от количества планируемых Вами записей. Также указан параметр post_status=future, который и задает вывод именно запланированных записей.

В пятой строке внутри тега li, размещаем ссылку на запись. Это будет просто название записи. Можно пожеланию добавить миниатюру, для этого в эту строку нужно добавить функцию вывода миниатюр.

<?php the_post_thumbnail(); ?>

Возможно Вы захотите вывести дату, когда будет опубликована запись. В этом Вам поможет функция - get_the_date. Как и с миниатюрой, просто добавьте внутрь тега LI.

<?php echo get_the_date("d M Yг"); ?>

Готовый код будет таким со всеми этими функциями будет таким:

<ul class="futuregb">
<?php
$todayPosts = new WP_Query('showposts=10&post_status=future'); // Указываем ярлык категории из которой выводить записи, выводит 3 записи
while($todayPosts->have_posts()){ $todayPosts->the_post();  ?>
<li><?php the_post_thumbnail(); ?><span><?php echo get_the_date("d M Yг"); ?></span><br><a title="<?php the_title(); ?>" href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php } ?>
</ul>

Как Вы поняли список выводится с помощью - ul-списка. Так что для правильного внешнего вида, нужно добавить немного стилей. Стили будут для вывода названия, даты и миниатюры. Стили будут примерно такими.

.futuregb{list-style:none;margin:0;}
.futuregb .wp-post-image{max-height:80px;max-width:80px;margin:0 10px 0 0;padding:2px;border:1px solid #ccc;}
.futuregb li {min-height:80px;padding-bottom:10px;margin:10px 0;}
.futuregb li > div{float:left;}
.futuregb a{color:#390;}
.futuregb span{color:#888;font-size:11px;}

Как и всегда, если хоть немного разбираетесь, можете все поменять под себя и внешний вид своего сайта. Преимущество способа в том, что не нужно использовать плагины, которые хоть и легче в настройке, но несут больше нагрузки на сайт.

Теперь Ваши посетители смогут увидеть что Вы запланировали для них и многим это может понравится. Буду очень рад, если кому-то понадобится данный скрипт и Вы примените его у себя на сайте.

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

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

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

Оцініть статтю
  1. 5
  2. 4
  3. 3
  4. 2
  5. 1
Проголосовало: 4, в среднем: 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