Wordpress Split архивирует на 5 разделов на основе категории и тегов - PullRequest
0 голосов
/ 02 ноября 2009

На моем сайте (в настоящее время PHP5, WordPress 2.8.5) У меня много категорий всего = 150. Каждая категория является названием города, т. Е. Париж, с этим тегом связана эта категория. То есть: Гостиница, Спорт, Бары, Развлечения, Всего еды-> 5

На моей странице архива я хочу создать раздел с вкладками на основе моих тегов. то есть:

tab 1: tag-> Hotel-> перечисляет все сообщения из Парижа с выбранным тегом
tab 2: tag-> Sports-> перечисляет все сообщения из Парижа с выбранным тегом
tab 3: tag-> Bars-> etc ... etc ..

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

только что код страницы выглядит почти так же, как любая другая страница архивов по умолчанию.

$post = $posts[0];
if (is_category()) { ?>

    <h2 class="title"><?php single_cat_title(); ?></h2>
    <div style="border-bottom:1px dotted #ccc; text-align:justify;">
<?php echo category_description( $category ); ?>  
    <br />
    <br />  
    </div>  } // end if category

Tab 1:
<strong>Hotels</strong>
<?php query_posts('tag=hotels&showposts=5'); ?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<div class="title"><a href="<?php the_permalink() ?>"><?php the_title() ?></a></div>
<div><?php the_excerpt(); ?></div>
<br />
<?php endwhile; endif; ?>

Tab 2:
<strong>Restaurants</strong>
<?php query_posts('tag=restaurants&showposts=5'); ?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<div class="title"><a href="<?php the_permalink() ?>"><?php the_title() ?></a></div>
<div><?php the_excerpt(); ?></div>
<br />
<?php endwhile; endif; ?>

Сейчас страница загружается, но в каждой секции вкладок будут перечислены все сообщения со связанным тегом, а не фильтр по категории ... поэтому будут перечислены все сообщения из тега hotel (ну 5 из них, т.е. showposts = 5),

Итак, мой вопрос таков:
В любом случае можно ли отфильтровать категорию, а затем отфильтровать снова по тегу?

1 Ответ

1 голос
/ 03 ноября 2009

Используйте get_query_var, чтобы получить запрашиваемую категорию,

if ( is_category() ) { $cat = get_query_var('cat');

затем в вашем запросе, например, используйте,

query_posts('tag=hotels&showposts=5&cat='.$cat);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...