获取自定义帖子类型的月度存档

时间:2011-04-05 作者:Redlist

我知道这是一个相当常见的话题,但我似乎无法解决我面临的问题。非常感谢您的帮助,我现在正在努力。

使用自定义帖子类型UI插件,我创建了一些自定义帖子类型(本例中我将使用“blog”)。我已经将has\\u archive=>设置为true,并且还使用了一个名为Custom Post Type Archives的插件来让分页正常工作。到目前为止,我的永久链接、标签、类别和分页都正常工作。然而,问题是当我尝试使用wp\\u get\\u archives函数时。我知道这不会获取CPT,所以我使用了自定义Post类型归档插件(wp\\u get\\u Custom\\u Post\\u Archives)附带的功能。根据我调整参数的方式,它要么显示404,要么加载归档文件,但只显示每个条目(不只是特定于所选月份的条目)。理想情况下,我只想让它显示每月的档案。

<?php wp_get_post_type_archives(\'blog\');
请看这里:http://www.metropoliscreative.com/coding/w/blog/

我用这个来注册帖子类型,我相信我做得很好。不知道我现在做错了什么。

register_post_type(\'blog\', array(   
        \'label\' => \'Blog\',
        \'description\' => \'Blog Entries\',
        \'public\' => true,
        \'show_ui\' => true,
        \'show_in_menu\' => true,
        \'capability_type\' => \'post\',
        \'hierarchical\' => false,
        \'rewrite\' => array(
            \'slug\' => \'blog\'),
        \'has_archive\' => true,
    \'query_var\' => true,
    \'supports\' => array(\'title\',\'editor\',\'excerpt\',\'trackbacks\',\'custom-fields\',\'comments\',\'revisions\',\'thumbnail\',\'author\',\'page-attributes\',),
    \'taxonomies\' => array(\'category\',\'post_tag\',),
    \'labels\' => array (
      \'name\' => \'Blog\',
      \'singular_name\' => \'Blog\',
      \'menu_name\' => \'Blog\',
      \'add_new\' => \'Add Blog\',
      \'add_new_item\' => \'Add New Blog\',
      \'edit\' => \'Edit\',
      \'edit_item\' => \'Edit Blog\',
      \'new_item\' => \'New Blog\',
      \'view\' => \'View Blog\',
      \'view_item\' => \'View Blog\',
      \'search_items\' => \'Search Blog\',
      \'not_found\' => \'No Blog Found\',
      \'not_found_in_trash\' => \'No Blog Found in Trash\',
      \'parent\' => \'Parent Blog\',
    ),) );

1 个回复
SO网友:Bainternet

您可以使用getarchives_where 吊钩wp_get_archives() 作用

将此函数添加到函数中。php:

function Cpt_getarchives_where_filter( $where , $r ) {

  $post_type = \'blog\';
  return str_replace( "post_type = \'post\'" , "post_type = \'$post_type\'" , $where );
}
然后,当您需要每月存档时,请填写以下内容:

add_filter( \'getarchives_where\' , \'Cpt_getarchives_where_filter\' , 10 , 2 );
wp_get_archives();
remove_filter(\'getarchives_where\' , \'Cpt_getarchives_where_filter\' , 10 );

相关推荐

获取自定义帖子类型的月度存档 - 小码农CODE - 行之有效找到问题解决它

获取自定义帖子类型的月度存档

时间:2011-04-05 作者:Redlist

我知道这是一个相当常见的话题,但我似乎无法解决我面临的问题。非常感谢您的帮助,我现在正在努力。

使用自定义帖子类型UI插件,我创建了一些自定义帖子类型(本例中我将使用“blog”)。我已经将has\\u archive=>设置为true,并且还使用了一个名为Custom Post Type Archives的插件来让分页正常工作。到目前为止,我的永久链接、标签、类别和分页都正常工作。然而,问题是当我尝试使用wp\\u get\\u archives函数时。我知道这不会获取CPT,所以我使用了自定义Post类型归档插件(wp\\u get\\u Custom\\u Post\\u Archives)附带的功能。根据我调整参数的方式,它要么显示404,要么加载归档文件,但只显示每个条目(不只是特定于所选月份的条目)。理想情况下,我只想让它显示每月的档案。

<?php wp_get_post_type_archives(\'blog\');
请看这里:http://www.metropoliscreative.com/coding/w/blog/

我用这个来注册帖子类型,我相信我做得很好。不知道我现在做错了什么。

register_post_type(\'blog\', array(   
        \'label\' => \'Blog\',
        \'description\' => \'Blog Entries\',
        \'public\' => true,
        \'show_ui\' => true,
        \'show_in_menu\' => true,
        \'capability_type\' => \'post\',
        \'hierarchical\' => false,
        \'rewrite\' => array(
            \'slug\' => \'blog\'),
        \'has_archive\' => true,
    \'query_var\' => true,
    \'supports\' => array(\'title\',\'editor\',\'excerpt\',\'trackbacks\',\'custom-fields\',\'comments\',\'revisions\',\'thumbnail\',\'author\',\'page-attributes\',),
    \'taxonomies\' => array(\'category\',\'post_tag\',),
    \'labels\' => array (
      \'name\' => \'Blog\',
      \'singular_name\' => \'Blog\',
      \'menu_name\' => \'Blog\',
      \'add_new\' => \'Add Blog\',
      \'add_new_item\' => \'Add New Blog\',
      \'edit\' => \'Edit\',
      \'edit_item\' => \'Edit Blog\',
      \'new_item\' => \'New Blog\',
      \'view\' => \'View Blog\',
      \'view_item\' => \'View Blog\',
      \'search_items\' => \'Search Blog\',
      \'not_found\' => \'No Blog Found\',
      \'not_found_in_trash\' => \'No Blog Found in Trash\',
      \'parent\' => \'Parent Blog\',
    ),) );

1 个回复
SO网友:Bainternet

您可以使用getarchives_where 吊钩wp_get_archives() 作用

将此函数添加到函数中。php:

function Cpt_getarchives_where_filter( $where , $r ) {

  $post_type = \'blog\';
  return str_replace( "post_type = \'post\'" , "post_type = \'$post_type\'" , $where );
}
然后,当您需要每月存档时,请填写以下内容:

add_filter( \'getarchives_where\' , \'Cpt_getarchives_where_filter\' , 10 , 2 );
wp_get_archives();
remove_filter(\'getarchives_where\' , \'Cpt_getarchives_where_filter\' , 10 );

相关推荐