如何使用单一-[POST_TYPE]和ARCHIVE-[POST-TYPE]显示自定义帖子类型?

时间:2011-09-21 作者:Sabai

我的自定义帖子类型有点问题。。。我的帖子类型叫做“视频”。我把所有的帖子都用“single”显示在他们的单页上。php的模板。但是当我从url中删除帖子名称并保留/videos/时,我得到了一个404,但我想在这里列出所有的“视频”。我尝试使用存档视频。法典建议的php文件:http://codex.wordpress.org/Post_Types, 还是没有运气。它还说,你可以做单一的视频。php用于自定义帖子类型,但这也不起作用。我将在下面显示我用于注册帖子类型的代码,我是否做错了什么?

add_action(\'init\', \'videos_register\');
function videos_register() {
    $labels = array(
        \'name\' => _x(\'Videos\', \'post type general name\'),
        \'singular_name\' => _x(\'Video\', \'post type singular name\'),
        \'add_new\' => _x(\'Add New\', \'question\'),
        \'add_new_item\' => __(\'Add New Video\'),
        \'edit_item\' => __(\'Edit Video\'),
        \'new_item\' => __(\'New Video\'),
        \'view_item\' => __(\'View Video\'),
        \'search_items\' => __(\'Search Videos\'),
        \'not_found\' =>  __(\'Nothing found\'),
        \'not_found_in_trash\' => __(\'Nothing found in Trash\'),
        \'parent_item_colon\' => \'\'
    );
    $args = array(
        \'labels\' => $labels,
        \'public\' => true,
        \'publicly_queryable\' => true,
        \'show_ui\' => true,
        \'query_var\' => true,
        \'menu_icon\' => get_stylesheet_directory_uri() . \'/article16.png\',
        \'rewrite\' => true,
        \'capability_type\' => \'post\',
        \'hierarchical\' => false,
        \'menu_position\' => null,
        \'supports\' => array(\'title\',\'editor\',\'thumbnail\')
      ); 
    register_post_type( \'videos\' , $args );
    flush_rewrite_rules();
}

4 个回复
最合适的回答,由SO网友:Brian Fegter 整理而成

您需要添加参数“has\\u archive”=>true。希望这有帮助!

SO网友:Derek Bennion

我在尝试引用自定义post归档文件时也遇到了404错误。以下几行解决了我的问题:

...
\'rewrite\' => true,
\'has_archive\' => true
...    
register_post_type( \'post_type\' , $args );    
flush_rewrite_rules();
我还必须确保我的permalink结构是:

/%postname%/

SO网友:louie
SO网友:spiralclick

可能有点晚了,但重要的是要提到…

\'has_archive\' => \'my-example-archive\' // True/False 
…或明确提及slug,即news, events 然后禁用永久链接并在保存后再次激活将解决问题。

结束

相关推荐