Как создать шорткод последних записей?
![]()
Добавьте следующий код в functions.php вашей темы:
function wpschool_recent_posts_shortcode( $atts, $content = null ) {
global $post;
extract( shortcode_atts( array (
'cat' => '',
'num' => '5',
'order' => 'DESC',
'orderby' => 'post_date',
), $atts ));
$args = array(
'cat' => $cat,
'posts_per_page' => $num,
'order' => $order,
'orderby' => $orderby,
);
$output = '';
$posts = get_posts( $args );
foreach( $posts as $post ) {
setup_postdata( $post );
$output .= '<li><a href="'. get_the_permalink() .'">'. get_the_title() .'</a></li>';
}
wp_reset_postdata();
return '<ul>'. $output .'</ul>';
}
add_shortcode( 'recent_posts', 'wpschool_recent_posts_shortcode' );
Чтобы добавить последние публикации в пост или страницу, вставьте в нужном месте шорткод:
[recent_posts num = "5" cat = "7"]В итоге появится список из 5 записей из категории с
ID=7. Вы можете настроить атрибуты по своему желанию. Шорткод также принимает несколько других атрибутов:
[recent_posts num = "10" cat = "" order = "asc" orderby = "rand"]Теперь список будет включать 10 записей из любой категории, упорядоченных случайным образом и отображаемых в порядке возрастания.
Больше функций вывода данных поста здесь https://gist.github.com/raamdev/8550578
Добавить комментарий