Популярные записи будут сортироваться по количеству оставленных комментариев к записи. Выходит чем больше комментариев в записи, тем она стает популярнее и будет выводиться в списке выше остальных.
1. Нужно прописать скрипт наших популярных записей внутри нашей темы.
Прописать можно к примеру в файле sidebar.php/ Вы можете также прописать в файле single.php, после записи как это у меня или в любом другом месте, где Вам удобно.
Для вывода списка будем использовать WP_Query, с легкими и не большими настройками. Такой у нас будет первая строка
<?php $pc = new WP_Query('orderby=comment_count&posts_per_page=5'); ?>
где мы указал по какому принципу сортировать и сколько постов выводить. Цифра 5 и есть количество, можете менять ее на нужное вам.
Далее вызываем сами посты.
<?php while ($pc->have_posts()) : $pc->the_post(); ?>
Теперь осталось только добавить вывод названия поста, и его миниатюру.
<a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_post_thumbnail(array()); ?></a> <a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a>
Первая строка миниатюры, вторая название записи. Если Вы хотите вывод чего-то одного, самих миниатюр или просто названия, просто удалите лишнюю строку.
Теперь Смотрим, общую картину и готовый код для вставки в наш файл темы.
<ul> <?php $pc = new WP_Query('orderby=comment_count&posts_per_page=5'); ?> <?php while ($pc->have_posts()) : $pc->the_post(); ?> <li> <a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_post_thumbnail(array()); ?></a> <a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a> </li> <?php endwhile; ?> </ul>
На этом этапе список уже годов, и скрипт работает, но теперь нужно немного придать стили для корректного отображения данного блока.
2. Немного украшаем список с помощью CSS.
Для начала нужно придумать класс в который мы заключим весь список. Пусть это будет popular_box
.popular_box ul li{ line-height:16px; display:block; border-bottom:1px solid #eee; padding:15px 0px 20px 0px; height:50px; font-size:12px; }
Теперь добавим стили миниатюрам.
.popular_box ul li img { width: 50px; height: 50px; border:1px solid #ccc; background:#fff; padding:2px; float:left; margin:0 10px 0 0px; -moz-box-shadow: 0 0 10px rgba(0,0,0,0.2); /* Для Firefox */ -webkit-box-shadow: 0 0 10px rgba(0,0,0,0.2); /* Для Safari и Chrome */ box-shadow: 2px 2px 2px rgba(0,0,0,0.1); /* Параметры тени */ -moz-transition: border 0.3s 0.05s ease; -o-transition: border 0.3s 0.05s ease; -webkit-transition: border 0.3s 0.05s ease; } .popular_box li img:hover { border:1px solid #888; }
Теперь наши миниатюры имеют размер 50 на 50 пикселей, обводку, которая темнеет при наведении,также располагаются слева от названий постов
3. Смотрим готовый код для вставки в файл темы.
<div class="popular_box"> <ul> <?php $pc = new WP_Query('orderby=comment_count&posts_per_page=5'); ?> <?php while ($pc->have_posts()) : $pc->the_post(); ?> <li> <a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_post_thumbnail(array()); ?></a> <a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a> </li> <?php endwhile; ?> </ul> </div>
И готовый код для файла style.css, определяющий стили нашего списка.
.popular_box ul li{ line-height:16px; display:block; border-bottom:1px solid #e9e9e9; padding:15px 0px 20px 0px; height:50px; font-size:12px; } .popular_box ul li img { width: 50px; height: 50px; border:1px solid #ccc; background:#fff; padding:2px; float:left; margin:0 10px 0 0px; -moz-box-shadow: 0 0 10px rgba(0,0,0,0.2); /* Для Firefox */ -webkit-box-shadow: 0 0 10px rgba(0,0,0,0.2); /* Для Safari и Chrome */ box-shadow: 2px 2px 2px rgba(0,0,0,0.1); /* Параметры тени */ -moz-transition: border 0.3s 0.05s ease; -o-transition: border 0.3s 0.05s ease; -webkit-transition: border 0.3s 0.05s ease; } .popular_box li img:hover { border:1px solid #888; }
После вставки кода в нужные места, у вас появится список из пяти записей с миниатюрами.
На этом все. Спасибо за внимание 🙂