Я создал пользовательскую страницу, и она стала моей домашней страницей. На этой пользовательской странице я вытаскиваю последнее сообщение из определенной категории, я также создал форму разбиения на страницы, при нажатии на которую будут приняты пользователь на single.php. Мое намерение для single.php - иметь два пользовательских цикла.
Пользовательский цикл один
Я хочу, чтобы файл single.php распознавал его с домашней страницы и просматривал все сообщения, отмеченные той же категорией, что и на главной странице.
Некоторые из этих сообщений должны быть помечены более чем одной категорией, поэтому цикл должен знать, что нужно игнорировать другие категории и просто обращать внимание на данную категорию. Имеет ли это смысл?
Пользовательский цикл два
Если пользователь не пришел с домашней страницы, single.php будет действовать так, как обычно, то есть, если пользователь идет из index.php (в блоге), он будет переведен во второй цикл (запись в блоге)
Однако мне кажется, что я не могу провести различие между двумя циклами, возможно, я слишком усложняю ситуацию, поскольку у меня есть цикл, который объединяет все воедино, а затем у меня есть цикл для пользовательской нумерации страниц.
Вот код ниже, чтобы показать вам, о чем я говорю
custompage.php (установлен на дом) - Это прекрасно работает, но я опубликую это только в том случае, если кто-нибудь сможет убрать его
<?php query_posts('cat=1'); ?>
<?php
$myPosts = new WP_Query();
$myPosts->query('showposts=1');
if (have_posts()) :
while ($myPosts->have_posts()) : $myPosts->the_post();
?>
<script type="text/javascript">$.backstretch("<?php $key="image"; echo get_post_meta($post->ID, $key, true);?>");</script>
<div id="post-<?php the_ID(); ?>" class="info">
<h2><?php the_title(); ?></h2>
<ul class="nav">
<?php query_posts('posts_per_page=1&offset=1'); the_post(); ?>
<li class="prev"><a href="<?php the_permalink() ?>">Previous</a></li>
<?php wp_reset_query(); ?>
<li class="next"></li>
</ul>
</div>
<!-- end .info -->
<?php endwhile; endif; ?>
<?php wp_reset_query(); ?>
single.php - В настоящее время не работает
<?php if( in_category('1') ) { ?>
<!-- start -->
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<div id="post-<?php the_ID(); ?>" class="info">
<script type="text/javascript">$.backstretch("<?php $key="image"; echo get_post_meta($post->ID, $key, true);?>");</script>
<h2><?php the_title(); ?></h2>
<ul class="nav">
<li class="prev"><?php previous_post_link('%link', ' ', 'true', '1') ?></li>
<li class="next"><?php next_post_link('%link', ' ', 'true', '1'); ?></li>
<!--li class="prev"><?php //previous_post_link('%link', '%title;', 'true', '1') ?></li>
<li class="next"><?php //next_post_link('%link', '%title;', 'true', '1'); ?></li-->
</ul>
</div>
<!-- end .info -->
<?php endwhile; else: ?>
<?php endif; ?>
<!-- end -->
<?php }else{ ?>
<div id="content" class="widecolumn" role="main">
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<div <?php post_class() ?> id="post-<?php the_ID(); ?>">
<h2><?php the_title(); ?></h2>
<div class="entry">
<?php the_content('<p class="serif">Read the rest of this entry »</p>'); ?>
</div>
</div>
<?php comments_template(); ?>
<?php endwhile; else: ?>
<p>Sorry, no posts matched your criteria.</p>
<?php endif; ?>
</div>
<?php } ?>
Проблема, с которой я, похоже, сталкиваюсь, заключается в том, что, когда сообщение помечено двумя категориями, WordPress, похоже, не в состоянии провести различие между этими двумя категориями, и вместо того, чтобы перейти к следующей категории, которую он разбивает, и по умолчанию второй цикл.