Intereting Posts
Удаление ненужных номеров, добавленных в postname в permalinks ajax response -1 в теме wordpress 404 для некоторой пользовательской таксономии не ВСЕ таксономии «Post name» permalink возвращает домашнюю страницу для пользовательских сообщений Уведомление администратора не отображается Подробнее не работает в сообщениях сообщений Шаблон категории: необходимо отображать разные материалы на первой странице архивов. comment_form () генерирует неправильный URL-адрес действия Отслеживание количества коротких кодов для списка? Facebook и Google+ внезапно перестали нормально работать в WordPress Условный шаблон страницы не работает Как получить текущий идентификатор страницы за пределами цикла? Нет визуального редактора в WordPress – пустой экран Как получить сообщение с другого блога / сайта WordPress? Почему мой WordPress показывает 404 сообщение для 403 запрещенных каталогов?

Атрибут категории не работает в пользовательском коротком коде

У меня есть следующая функция, проблема заключается в том, что я устанавливаю категорию в свой короткий код, игнорируя ее, и показывает все сообщения из пользовательского типа сообщения. Так что это всего лишь работа.

/*-------------------------------------------------------------- ## Resources Shortcode --------------------------------------------------------------*/ function resources_query( $atts ) { extract(shortcode_atts(array( 'category' => '', 'per_page' => -1, 'orderby' => 'date', 'order' => 'ASC' ), $atts)); $tax_query = array( 'taxonomy' => 'resources_categories', 'field' => 'slug', 'terms' => array( esc_attr($category) ), 'operator' => 'IN', ); $args = array( 'post_type' => 'resources', 'post_status' => 'publish', 'posts_per_page' => $per_page, 'orderby' => $orderby, 'order' => $order, 'tax_query' => $tax_query ); $resources_query = new WP_Query( $args ); if ( $resources_query->have_posts() ) : $html_out = '<div class="fg-row row flex-row">'; while ( $resources_query->have_posts() ) : $resources_query->the_post(); $title = get_the_title(); $content = get_the_excerpt(); $pdf = get_field( "download_pdf" ); // Do stuff with each post here $html_out .= '<div class="fg-col col-xs-12 col-md-4 fg-text-dark"><section class="icon-box-v3 light-box text-left fg-text-dark"><i class="icon-box-v3-icons ff-font-et-line icon-document fg-text-dark ffb-icon-1"></i>'; $html_out .= '<h3 class="icon-box-v3-title fg-text-dark ffb-title-2">' . $title . '</h3><p class="icon-box-v3-title-paragraph fg-text-dark ffb-description-3">' . $content . '</p>'; if( $pdf ): $html_out .= '<a href="' . $pdf . '" class="ffb-block-button-1-0 ffb-btn ffb-btn-v1 ffb-btn-link btn-base-brd-slide btn-slide btn-base-md btn-w-auto fg-text-dark ffb-button1-1 btn-light-box" target="_blank"><span class="btn-text">Download PDF</span></a>'; endif; $html_out .= '</section></div>'; endwhile; $html_out .= '</div>'; else : // No results $html_out = "No Resources Found."; endif; wp_reset_query(); return $html_out; } add_shortcode( 'show_resources', 'resources_query' ); 

Вот что мой [show_resources category="post-surgery-information" per_page="-1"] действительно выглядит как [show_resources category="post-surgery-information" per_page="-1"] . Я не уверен, почему он проигнорировал бы это и покажет все сообщения. Я посмотрел на другие статьи Stack, чтобы помочь мне настроить это.

Поэтому я вижу две вещи, которые могут способствовать этой проблеме:

  1. Я действительно сомневаюсь, что вам понадобится esc_attr для запроса.
  2. Это сложный вопрос, но tax_query должен быть массивом массивов

Исходя из этого, я считаю, что это будет работать лучше для вас:

 $tax_query = array( 'taxonomy' => 'resources_categories', 'field' => 'slug', 'terms' => array( $category ), // <-------- 'operator' => 'IN', ); $args = array( 'post_type' => 'resources', 'post_status' => 'publish', 'posts_per_page' => $per_page, 'orderby' => $orderby, 'order' => $order, 'tax_query' => array($tax_query) // <-------- ); 

Надеюсь это поможет!

Ваш $tax_query должен быть массивом массивов аргументов налогового запроса:

 $tax_query = array( array( 'taxonomy' => 'resources_categories', 'field' => 'slug', 'terms' => array( esc_attr($category) ), 'operator' => 'IN' ) ); 

Для получения дополнительной информации см. https://codex.wordpress.org/Class_Reference/WP_Query#Taxonomy_Parameters .