使用Genesis框架的Wordpress,如何更改自定义内容类型的存档页面的输出?

时间:2017-05-14 20:41:34

标签: wordpress wordpress-theming genesis

我有一个自定义内容类型的存档页面,我想在存档列表中显示一个自定义字段。我不确定使用什么钩子或如何访问自定义内容类型中的变量以显示在-archive.php中。任何人都可以帮我解决相关问题,或者如何访问这些字段变量?

1 个答案:

答案 0 :(得分:0)

首先使用您的自定义帖子类型创建存档文件,文件名应该是这样的 archive- {post_type} .php

通过以下代码,这可能会对您有所帮助

<?php

remove_action ('genesis_loop', 'genesis_do_loop'); // Remove the standard loop
add_action( 'genesis_loop', 'custom_do_grid_loop' ); // Add custom loop
function custom_do_grid_loop() { 

 // Intro Text (from page content)
 echo '<div class="page hentry entry">';
 echo '<h1 class="entry-title">'. get_the_title() .'</h1>';
 echo '<div class="entry-content">' . get_the_content() ;
 $args = array(
 'post_type' => 'custom post type', // enter your custom post type
 'orderby' => 'menu_order',
 'order' => 'ASC',
 'posts_per_page'=> '12', // overrides posts per page in theme settings
 );
 $loop = new WP_Query( $args );
 if( $loop->have_posts() ):

 while( $loop->have_posts() ): $loop->the_post(); global $post;
 echo '<div id="testimonials">';
 echo '<div class="one-fourth first">';
 echo '<div class="quote-obtuse"><div class="pic">'. get_the_post_thumbnail( $id, array(150,150) ).'</div></div>';
 echo '<div style="margin-top:20px;line-height:20px;text-align:right;"><cite>'.genesis_get_custom_field( '_cd_client_name' ).'</cite><br />'.genesis_get_custom_field( '_cd_client_title' ).'</div>';
 echo '</div>'; 
 echo '<div class="three-fourths" style="border-bottom:1px solid #DDD;">';
 echo '<h3>' . get_the_title() . '</h3>';
 echo '<blockquote><p>' . get_the_content() . '</p></blockquote>'; 
 echo '</div>';
 echo '</div>';

 endwhile;

 endif;

 echo '</div><!-- end .entry-content -->';
 echo '</div><!-- end .page .hentry .entry -->';
}

/** Remove Post Info */
remove_action('genesis_before_post_content','genesis_post_info');
remove_action('genesis_after_post_content','genesis_post_meta');

genesis();
?>