Intereting Posts
Протокол нейтральных URL-адресов с wp_enqueue_script (вопросы SSL)? Плагин jQuery загружен правильно, но ничего не делает Как запросить «posts_per_page», чтобы отобразить другой шаблон индекса блога? Проверьте шаблон страницы на кнопке save_post. Как обернуть html вокруг API настроек add_settings_section () Как вы используете отображаемый образ последнего сообщения в категории в качестве фонового изображения Удалить все запросы Arg Последние сообщения показывают эскиз Включить комментарии к пользовательским типам сообщений в теме каталога Переписать правила и проблему входа как вставлять внешнюю веб-страницу на мою страницу wordpress Не удалось получить все действия (просмотр, редактирование, быстрое редактирование, корзина) и не удалять сообщение в настраиваемом типе сообщений Почему $ wpdb-> show_errors () и print_error () показывают вывод, даже если вывод запроса правильный? Как добавить шаблон в тему в WP Категории CPT – странный

Список всех сообщений в категории с функцией query_post ()

Я C programmer на C programmer , мало знаю о PHP . Я создал блог с wordpress.

Yestoday, я пытаюсь создать страницу www.abc.com/server , на этой странице будут перечислены все записи, относящиеся к категории server .

Я нашел полезную информацию в документе WordPress и Google

Я создал такой шаблон:

 <?php /* * Template name: list_catetory */ ?> <?php get_header(); ?> ... <?php query_posts( 'cat_name = $pagename' ); if(have_posts()) : while(have_posts()) : the_post(); ?> <div class="post-list" id="post-<?php the_ID(); ?>"> <h2> <a href="<?php the_permalink() ?>" title=""><?php the_title(); ?></a> .... </h2> </div> <?php endwhile; ?> <?php wp_reset_query(); ?> ... <?php get_footer(); ?> 

Я создаю страницу с именем server с этим шаблоном.

то я открываю эту страницу, я нашел эту страницу списка всех сообщений.

Почему в нем перечислены все сообщения, а не только список сообщений, относящихся к категории server

Здесь есть два вопроса:

  1. Использование query_posts()
  2. Неопределенная переменная $pagename

Я предполагаю, что вы хотите использовать slug страницы в качестве строки, переданной для параметра категории в массиве аргументов запроса? Вы можете получить это через $post->post_name , например:

 global $post; $page_slug = $post->post_name; 

Затем, чтобы передать это как параметр запроса, вы передадите его как 'category_name' .

Наконец, вы хотите вывести пользовательский запрос через WP_Query() , а не вызывать query_posts() :

 // Globalize $post global $post; // Custom query args array $category_query_args = array( 'category_name' => $post->post_name ); // Instantiate category query $category_query = new WP_Query( $category_query_args ); 

Затем вы можете запрограммировать свой пользовательский запрос следующим образом:

 // Open category query loop if ( $category_query->have_posts() ) : while ( $category_query->have_posts() ) : $category_query->the_post(); ?> <div class="post-list" id="post-<?php the_ID(); ?>"> <h2> <a href="<?php the_permalink() ?>" title=""><?php the_title(); ?></a> .... </h2> </div> <?php // Close category query loop endwhile; endif; // Reset $post data wp_reset_postdata();