特定类别内的自定义筛选器?

时间:2015-04-03 作者:vlovsky

我有不同的类别,需要不同的过滤器

例如,“训练”可以是关于特定运动员的特定身体部位,。。

我想要的是这样的:enter image description here

但这对于不同的类别有不同的版本。

我对wordpress开发相当陌生,但我已经做好了一切准备,制定了自己的主题。唯一剩下的就是这些定制的fiters。

我究竟应该如何做到这一点?例如,我可以使用自定义过滤器说:“身体部位:肩部”,然后在类别内的自定义字段上创建过滤器吗?

提前谢谢。

1 个回复
最合适的回答,由SO网友:Marcin 整理而成

我认为这些应该是单独的分类法。类别本身实际上是一种分类法。

您将为每个过滤器/下拉列表创建分类法。这似乎有些过头了,但我认为这将使开发其他功能变得更容易。

将以下方法添加到函数中。php。将“rwc”替换为主题的域:

function add_taxonomy($singular, $plural, $objects) {
$labels = array(
    \'name\'                => _x( $plural, \'General Name\', \'rwc\' ),
    \'singular_name\'       => _x( $singular, \'Singular Name\', \'rwc\' ),
    \'menu_name\'           => __( $plural, \'rwc\' ),
    \'parent_item_colon\'   => __( \'Parent \'.$singular.\':\', \'rwc\' ),
    \'all_items\'           => __( \'All \'.$plural, \'rwc\' ),
    \'view_item\'           => __( \'View \'.$singular, \'rwc\' ),
    \'add_new_item\'        => __( \'Add New \'.$singular, \'rwc\' ),
    \'add_new\'             => __( \'Add New \'.$singular, \'rwc\' ),
    \'edit_item\'           => __( \'Edit \'.$singular, \'rwc\' ),
    \'update_item\'         => __( \'Update \'.$singular, \'rwc\' ),
    \'search_items\'        => __( \'Search \'.$plural, \'rwc\' ),
    \'not_found\'           => __( $singular.\' Not found\', \'rwc\' ),
    \'not_found_in_trash\'  => __( $singular.\' Not found in Trash\', \'rwc\' ),
);             
    $args = array(
      \'hierarchical\'        => true,
      \'labels\'              => $labels,
      \'show_ui\'             => true,
      \'show_admin_column\'   => true,
      \'query_var\'           => true,
      \'rewrite\'             => array(\'slug\' => strtolower($singular))
    );
    register_taxonomy(strtolower($singular), $objects, $args);        
}
然后使用它添加分类法。如果要筛选页面,请将“post”替换为“page”

function add_custom_taxonomies() {
    $objects = array(\'post\');

    add_taxonomy(\'Gender\', \'Genders\', $objects);
    add_taxonomy(\'Level\', \'Levels\', $objects);
    // .. and so on
}
add_action( \'init\', \'add_custom_taxonomies\', 0 );

结束

相关推荐

Using categories with pages

我正在尝试使用页面类别(而不是帖子)作为筛选子页面的一种方式。我正在努力创建一个“工作”页面,其中列出了所有的子项,并且每个子项也将对其应用类别。另一个子菜单将允许您选择类别,并且仅列出这些子页面。迄今为止:functions.php - Show categories meta box for pagesfunction myplugin_settings() { register_taxonomy_for_object_type(\'category\', \'page\');