2015-09-16 145 views
2

我想创建一个存档页面,以此顺序显示帖子:使用wordpress创建存档页面

post_title | post_date | post_category

Offcourse这应该是点击链接的帖子,或者如果你点击某个类别比它应该链接到一个类别

什么我到目前为止有:

$args = array(
     'post_type' => 'post' 
    ); 

    $post_query = new WP_Query($args); 

    if($post_query->have_posts()) { 
     while($post_query->have_posts()) { 
     $post_query->the_post(); 
     ?> 
     <h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Link naar <?php the_title_attribute(); ?>"><?php the_title(); ?></a> | <?php the_date();?> | <?php get_the_category;?></h2> 
     <?php 
     } 
    } 
    ?> 

我知道, “the_permalink()”给了我发布的链接,“the_title”给了我标题。

此代码仅显示最近10个职位,而不是3000

另一个问题是,日期只显示了对10个职位2。

该类别根本没有显示出来。

这是我第一次尝试真正与wordpress合作,也许我真的这样做是错误的方式,所以我希望你们都能帮助我。预先感谢。

回答

1

您可以控制的职位数(比如50),像这样:

$args = array(
    'post_type' => 'post', 
    'posts_per_page' => 50 
); 

日期和类别显示了使用此:

<h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Link naar <?php the_title_attribute(); ?>"><?php the_title(); ?></a> | 
<?php 
    echo get_the_date(); 
    echo ' | '; 
    $category_list = get_the_category_list(', '); 
    if ($category_list) 
     echo $category_list; 
?> 
</h2> 

希望有所帮助。如果不是随意问的话!

+1

感谢这个作品真的很好。通过这种方式,我可以继续构建自定义存档 – user3398922

2

此代码仅显示最近10个职位,而不是3000

这是正常的WordPress的行为。默认情况下,如果您未指定posts_per_pagenumberposts参数至get_posts,它将使用设置>阅读中设置的值。因此,改变你的参数传递给这个(-1意味着它会显示你所有的讯息 - 将其更改为3000,如果你确实需要它是3000):

$args = array(
    'post_type' => 'post', 
    'numberposts' => -1 
); 

的另一个问题是,日期只显示了2的10个职位。

奇怪的是,这太默认的WordPress的行为(在我看来有点混乱)。如果你看一下在the_date文档页面的特别注意,它会告诉你:

如果有, the_date()当天在发表一个页面上的多个岗位只显示后的第一个

日期

如果你想在这个和所有帖子显示的日期,你需要使用get_the_date(它返回日期,所以你需要echo它)。

该分类根本没有显示出来。

你误用get_the_category - 它返回类对象数组相关的帖子,并没有什么echo。要显示链接到目前的职位类别,你需要使用的get_the_categoryget_category_link组合:

$category = get_the_category(); 
echo '<a href="' . get_category_link($category[0]->cat_ID) .'">' . $category[0]->cat_name . '</a>'; 
+0

请注意,如果您不介意使用列表标记获取所有类别,则类别的@Karthik回答也可以使用(使用'get_the_category_list')。 – vard