自定义帖子类型的存档页面的URL

时间:2016-02-04 作者:Galivan

我制作了一个自定义的帖子类型,并为帖子类型创建了一个归档页面。我不知道是否有可以访问此存档页的url?我想有一个页面,其中列出了此归档的所有“帖子”(产品)。但它们不需要被组织成发布日期(哪一个月和哪一天)。

这是代码

function register_products_post_type() {
    $labels_array = [
        \'name\'  =>  __( \'Produkter\', \'Divi\' ),
        \'singular_name\'      => _x( \'Produkt\', \'post type singular name\', \'Divi\' ),
        \'menu_name\'          => _x( \'Products\', \'admin menu\', \'Divi\' ),
        \'name_admin_bar\'     => _x( \'Product\', \'add new on admin bar\', \'Divi\' ),
        \'add_new\'            => _x( \'Add New\', \'product\', \'Divi\' ),
        \'add_new_item\'       => __( \'Add New Product\', \'Divi\' ),
        \'new_item\'           => __( \'New Product\', \'Divi\' ),
        \'edit_item\'          => __( \'Edit Product\', \'Divi\' ),
        \'view_item\'          => __( \'View Product\', \'Divi\' ),
        \'all_items\'          => __( \'All Products\', \'Divi\' ),
        \'search_items\'       => __( \'Search Products\', \'Divi\' ),
        \'parent_item_colon\'  => __( \'Parent Products:\', \'Divi\' ),
        \'not_found\'          => __( \'No products found.\', \'Divi\' ),
        \'not_found_in_trash\' => __( \'No products found in Trash.\', \'Divi\' )

    ];

    $args = array(
        \'public\' => true,
        \'labels\'  => $labels_array,
        \'description\'        => __( \'beskrivning.\', \'Divi\' ),
        \'publicly_queryable\' => true,
        \'show_ui\'            => true,
        \'show_in_menu\'       => true,
        \'query_var\'          => true,
        \'capability_type\'    => \'post\',
        \'has_archive\'        => true,
        \'hierarchical\'       => false,
        \'menu_position\'      => null,
        \'supports\'           => array( \'title\', \'editor\', \'author\', \'thumbnail\', \'excerpt\', \'comments\' )
    );

    register_post_type( \'products\', $args );
}
add_action( \'init\', \'register_products_post_type\' );
我有一个档案。php和存档产品。php。因此,我需要的主要内容是一个指向帖子类型的归档页面的url。然后我需要编辑该归档以显示产品。

edit: 当我尝试访问页面“/产品”时,我看到的是404页面。

我认为另一种方法是创建一个普通的自定义页面,在其中列出产品,并将其用作“归档”。我不知道这是否是更好的选择。

1 个回复
SO网友:Pieter Goosen

首先,在你做任何事情之前,确保你已经刷新了你的永久链接,404通常是指你在第一次创建自定义帖子类型后没有刷新永久链接。

get_post_type_archive_link() 将URL返回到post type archive页面,因此您可以执行以下操作

echo get_post_type_archive_link( \'products\' );
获取正确的URL

对于自定义模板,您可以创建一个名为archive-products.php 在上显示您的产品。WordPress将在您访问产品归档页面时自动选择并使用该模板

相关推荐