Intereting Posts
wpdb :: prepare был вызван неправильно Жирные буквы внутри выдержки Как настроить пользовательский аватар для пользователей? Создание программных программ Параметры API – Неопределенный индекс при снятии флажка Получить комментарии: Прямая ссылка на конкретный комментарий + пост Можно ли направить пользователей на определенную должность на основе пароля, введенного на домашней странице? wp_get_referer не работает должным образом после wp_redirect Объект получает нежелательную ширину и высоту Слишком много вложенных циклов wp_query в этом гипотетическом запросе? В основном, противоположный многосайтовый URL-адрес, который задают большинство людей Пользовательский эскиз из URL через плагин Заказ WordPress Пользовательские страницы таксономии и разбиение на страницы не работают Показать иерархическую взаимосвязь между настраиваемыми типами сообщений в списке admin Проверка производительности файлов WordPress

Как сделать короткий код для моей WP_Query Loop?

Я разработчик WordPress Noob, и я только что создал свою первую страницу пользовательских шаблонов, используя расширенные настраиваемые поля и сумел выполнить цикл.

<?php $args = array( 'post_type' => 'art', 'orderby' => 'title', 'order' => 'ASC' ); $the_query = new WP_Query( $args ); ?> <?php if ( have_posts() ) : while ( $the_query->have_posts() ) : $the_query->the_post(); ?> <?php get_template_part( 'content', 'art' ); ?> <?php endwhile; endif; ?> 

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

Пример:

 function foobar_func( $atts ){ return "foo and bar"; } add_shortcode( 'foobar', 'foobar_func' ); 

Мой вопрос: как я могу поместить цикл в свой короткий код?

Solutions Collecting From Web of "Как сделать короткий код для моей WP_Query Loop?"

Я делаю это с прошлого года, и я получаю короткие коды:

  function my_code() { ob_start(); get_template_part('loop_logos'); return ob_get_clean(); } add_shortcode( 'logos', 'my_code' ); 

где get_template_part загружает файл loop_logos.php, а логотипы – это shortcode name [logos].

ПОДСКАЗКА

Когда я начал это делать, я использовал все равные, чтобы избежать ошибок, Ex:

 function loop_logos() { ob_start(); get_template_part('loop_logos'); return ob_get_clean(); } add_shortcode( 'loop_logos', 'loop_logos' ); 

Поэтому мне пришлось беспокоиться о том, чтобы загрузить loop_logos.php в нужную папку. и вызвать короткий код с помощью [loop_logos]