问题描述
问题:我们的 wordpress 安装使用 archive.PHP 作为存档页面,而不是所需的 archive-article.PHP。
这是我们的配置:
functions.PHP
register_post_type(
'article',array(
'labels' => array(
'name' => __('Articles'),'singular_name' => __('Article'),),'public' => true,'has_archive' => true,'menu_icon' => 'dashicons-media-default','menu_position' => 4,'taxonomies' => array('article_type'),'supports' => array('title','editor','custom-fields','page-attributes','thumbnail')
)
);
archive-article.PHP
<?PHP
/**
* The template for displaying Archive pages.
*
* Used to display archive-type pages if nothing more specific matches a query.
* For example,puts together date-based pages if no date.PHP file exists.
*
* Learn more: http://codex.wordpress.org/Template_Hierarchy
*
* Methods for TimberHelper can be found in the /lib sub-directory
*
* @package wordpress
* @subpackage Timber
* @since Timber 0.2
*/
$templates = array( 'archive-article.twig','index.twig' );
$context = Timber::context();
$args = array(
'post_type' => 'article','posts_per_page' => '-1'
);
$context['title'] = 'Archive: Article';
$context['categories'] = $post->terms( array(
'query' => [
'taxonomy' => 'article_type',],) );
$context['article'] = new \Timber\PostQuery($args);
Timber::render( $templates,$context );
第二双眼睛的任何帮助将不胜感激!
解决方法
尝试将存档 slug 添加到您的自定义帖子注册中,以及 has_archive?
"rewrite" => array("slug" => "articles"),