Timber/Twig WordPress 设置中未使用自定义帖子类型存档页面

问题描述

问题:我们的 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"),