Intereting Posts
Попытка выполнить сложный пользовательский запрос поля с порядком, задав значение поля admin-ajax.php отвечает 0 Использование «setup_postdata» с «get_template_part» не работает Способ сортировки тем WordPress? Неустранимая ошибка: Непринятая ошибка: вызов функции undefined do_action_ref_array () при использовании функции wp_signon Разный шаблон страницы для разбитого на страницы контента? Запрос get_posts соответствует слишком большому количеству результатов Как добавить контент в конец страницы с помощью крючка? Как отлаживать: мой плагин мешает моей теме Устаревшая проблема в WordPress Как перечислять события по годам и месяцам с помощью расширенных пользовательских полей? Почему WordPress требует времени, чтобы отправить запрос на сохранение сообщения? 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]