Я создаю собственную тему с нуля и сталкиваюсь с небольшой проблемой, с которой мне нужна помощь.
Итак, у меня есть на первой полосе список из трех последних сообщений в блоге с заголовком «Выдержка» & ссылка «more …», которая как по заголовку, так и по ссылке more приводит вас к single.php.
Я генерирую содержимое публикации в файле с именем ‘content-post.php’, который выглядит следующим образом:
<div class="clearfix">
<?php echo get_the_post_thumbnail( $post_id, $size, $attr ); ?>
<header class="title">
<h3><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h3>
</header>
<ul class="info">
<li><?php the_category(', '); ?> | <?php the_time('F Y'); ?></li>
<!--<li>Written By: <a href="<?php bloginfo('siteurl') ?>/about/"><?php the_author(); ?></li>-->
</ul>
<div class="excerpt">
<p><?php if(is_single()): ?>
<?php the_content(); ?>
<?php comments_template(); ?>
<?php else: ?>
<?php the_excerpt(); ?>
<a class="post-link" href="<?php the_permalink(); ?>">More...</a></p>
<?php endif; ?>
</div>
</div>
Это создает сообщения на front-page.php просто отлично. У меня возникла проблема, когда вы заходите на страницу блога, которая использует тот же контент поста, а макет такой же. Есть ли способ, которым я могу указать, как он отображается на первой странице и как он отображается на странице блога?
Сообщение отображается на front-page.php следующим образом:
<?php if ( have_posts() ) : while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
<?php get_template_part( 'content', 'post' ); ?>
<?php endwhile; endif; ?>
А на странице блога вот так:
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<?php get_template_part( 'content', 'post' ); ?><?php endwhile; else: ?>
<p>There are no posts to display or pages here</p>
<?php endif; ?>
Если я понимаю ваш вопрос, попробуйте это:
<?php if (is_page(
идентификатор страницы)){
Ваш запрос}
Удачи! 😉
PS .. или в пути
<?php if (is_page(
идентификатор страницы)): ?>
Ваш запрос
<?php endif; ?>
Других решений пока нет …