我想创建一个页面模板文件来显示自定义内容类型的帖子。实际上我有3种不同类型的帖子类型'书籍','作者'和新闻。 这是我的问题这3个帖子类型有不同的模板,我想在单独的页面中显示每个主题,第一个问题我应该在page.php或single.php中调用这些帖子类型?我已经知道single.php用于动态内容而page.php用于静态内容,我应该创建什么来显示这些帖子类型的内容? 这是一个例子: 我创建了page-author.php文件来显示作者的帖子类型 这是我的代码
<?php /* Template Name: author-page-theme */
get_header(); ?>
<div class="head-style col-md-12 col-sm-12 col-xs-12">
<?php while ( have_posts() ) : the_post(); ?>
<div class="title-pack col-md-12 col-sm-12 col-xs-12">
<span class="line visible-sm-block"></span>
<span class="visible-sm-block tittle-style"><?php the_title(); ?></span>
</div>
<div class="row writer-crit">
<div class="writer-crit-box col-md-9 col-sm-8 col-xs-12">
<div class="col-md-11 col-sm-11 col-xs-12">
<?php $args = array( 'post_type' => 'Author', 'posts_per_page' => 5 );
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post(); ?>
<a class="writer-link col-md-12 col-sm-12 col-xs-12" href="<?php post_permalink(); ?>">
<div class="writer-row1 col-md-12 col-sm-12 col-xs-12">
<div class="col-md-2 col-sm-3 col-xs-12 image-right">
<?php the_post_thumbnail(array('class' => 'img-responsive')); ?>
</div>
<div class="col-md-10 col-xs-12 col-sm-9 col-xs-12 pull-right writer-content">
<h3><?php the_title(); ?></h3>
<?php if ( get_field('auth-trans') ) {
echo '<h4>'.get_field('auth-trans').'</h4>';} ?>
<?php if ( get_field('writer-bio') ) {
echo '<p>'.get_field('writer-bio').'</p>';} ?>
<span>...</span>
</div>
</div>
</a>
<?php endwhile; // End of the loop. ?>
</div>
</div>
<?php endwhile; // End of the loop. ?>
</div>
<?php get_footer(); ?>
但它不起作用。它只显示索引页面模板而不是我为此页面创建的内容。 有关如何发布此帖子的任何建议? 我是WordPress的新手,这是我的第一个项目,所以我真的需要帮助。
答案 0 :(得分:0)
您需要从管理员创建一个页面,然后选择模板&#39; author-page-theme&#39;从下拉框中显示&#39;页面模板&#39;。要在前端显示,请转到外观 - &gt;菜单。然后选择相应的菜单。然后将新创建的页面拖动到所选菜单。
答案 1 :(得分:0)
$args = array(
'posts_per_page' => 5,
'offset' => 0,
'category' => '',
'category_name' => '',
'orderby' => 'date',
'order' => 'DESC',
'include' => '',
'exclude' => '',
'meta_key' => '',
'meta_value' => '',
'post_type' => 'Author',
'post_mime_type' => '',
'post_parent' => '',
'author' => '',
'author_name' => '',
'post_status' => 'publish',
'suppress_filters' => true
);
$posts_array = get_posts( $args );
然后var_dump($posts_array);
另外,请检查您输入的post_type
是否正确。
答案 2 :(得分:0)
您可以浏览此处描述的自定义帖子类型模板:https://codex.wordpress.org/Post_Type_Templates