如何将侧边栏添加到存档页面
Posted
技术标签:
【中文标题】如何将侧边栏添加到存档页面【英文标题】:How to add a sidebar to archive page 【发布时间】:2019-04-27 09:22:11 【问题描述】:我想通过代码向我的存档页面添加一个侧边栏。以下代码已添加到存档模板中。侧边栏已成功添加。但是,侧边栏会逐个重复。
请帮我检查下面的代码。
<div class="row max_width">
<div class="small-12 large-8 columns">
<?php if ( has_post_thumbnail() ) ?>
<figure class="post-gallery parallax">
<div class="parallax_bg"
data-top-bottom="transform: translate3d(0px, 20%, 0px);"
data-bottom-top="transform: translate3d(0px, -20%, 0px);">
<?php the_post_thumbnail('notio-single-3x'); ?>
</div>
</figure>
<?php ?>
<header class="post-title">
<?php get_template_part( 'inc/templates/postbits/post-meta' ); ?>
<h3 itemprop="headline"><a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></h3>
</header>
<div class="post-content">
<?php the_excerpt(); ?>
<a href="<?php the_permalink(); ?>" class="more-link"><?php esc_html_e( 'Read More', 'notio' ); ?></a>
</div>
<?php do_action( 'thb_PostMeta' ); ?>
</div>
<div class="small-12 large-3 columns sidebar">
<?php if ( is_active_sidebar( 'custom-side-bar' ) ) : ?>
<?php dynamic_sidebar( 'custom-side-bar' ); ?>
<?php endif; ?>
</div>
</div>
【问题讨论】:
【参考方案1】:尝试如下:
<div class="row max_width">
<?php
/* Start the Loop */
while( have_posts() ) : the_post(); ?>
<div class="small-12 large-8 columns">
<?php if ( has_post_thumbnail() ) ?>
<figure class="post-gallery parallax">
<div class="parallax_bg"
data-top-bottom="transform: translate3d(0px, 20%, 0px);"
data-bottom-top="transform: translate3d(0px, -20%, 0px);">
<?php the_post_thumbnail('notio-single-3x'); ?>
</div>
</figure>
<?php ?>
<header class="post-title">
<?php get_template_part( 'inc/templates/postbits/post-meta' ); ?>
<h3 itemprop="headline"><a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></h3>
</header>
<div class="post-content">
<?php the_excerpt(); ?>
<a href="<?php the_permalink(); ?>" class="more-link"><?php esc_html_e( 'Read More', 'notio' ); ?></a>
</div>
<?php do_action( 'thb_PostMeta' ); ?>
</div>
<?php
endwhile; // End of the loop. ?>
<div class="small-12 large-3 columns sidebar">
<?php if ( is_active_sidebar( 'custom-side-bar' ) ) : ?>
<?php dynamic_sidebar( 'custom-side-bar' ); ?>
<?php endif; ?>
</div>
</div>
【讨论】:
感谢您的回复。我试过这些代码。但是,存档页面无法访问并变成 504 网关超时。 另外,我的问题是post可以一个一个正常显示,但是侧边栏却一而再再而三的重复。 我尝试将侧边栏代码和发布代码分别放入 while 循环中。但两者都导致了 504。以上是关于如何将侧边栏添加到存档页面的主要内容,如果未能解决你的问题,请参考以下文章