在我的网站上,我想制作一个自定义的帖子类型和几个分类法(WordPress)

时间:2018-02-14 16:07:01

标签: php wordpress

在我的网站上,我想制作一个自定义的帖子类型和几种分类法。 我试图编写以下代码:

发布类型:trabajo

if ( ! function_exists('set_custom_post') ) {

// Register Custom Post Type
function set_custom_post() {
    $rewrite = array(
        'slug'                  => 'trabajo',
        'with_front'            => true,
        'pages'                 => true,
        'feeds'                 => true,
    );
    $args = array(
        'label'                 => __( 'Trabajo', 'text_domain' ),
        'description'           => __( 'Trabajos realizados en Peces Gordos Studios S.L', 'text_domain' ),
        'labels'                => $labels,
        'supports'              => array( 'title', 'editor', 'thumbnail', 'revisions', 'post-formats' ),
        'taxonomies'            => array( 'categoria_trabajo', 'etiqueta_trabajo' ),
        'hierarchical'          => false,
        'public'                => true,
        'show_ui'               => true,
        'show_in_menu'          => true,
        'menu_position'         => 5,
        'menu_icon'             => 'dashicons-art',
        'show_in_admin_bar'     => true,
        'show_in_nav_menus'     => true,
        'can_export'            => true,
        'has_archive'           => 'archivo-trabajos',
        'exclude_from_search'   => false,
        'publicly_queryable'    => true,
        'query_var'             => 'trabajo',
        'rewrite'               => $rewrite,
        'capability_type'       => 'page',
    );
    register_post_type( 'trabajo', $args );

}
add_action( 'init', 'set_custom_post', 0 );

}

Taxonomy categoria_trabajo:

if (  function_exists( 'categoria_trabajo' ) ) {

// Register Custom Taxonomy
function categoria_trabajo() {
    $args = array(
        'labels'                     => $labels,
        'hierarchical'               => true,
        'public'                     => true,
        'show_ui'                    => true,
        'show_admin_column'          => true,
        'show_in_nav_menus'          => true,
        'show_tagcloud'              => false,
        'query_var'                  => 'categoria',
        'rewrite'                    => $rewrite,
        'capabilities'               => $capabilities,
    );
    register_taxonomy( 'categoria_trabajo', array( 'trabajo' ), $args );

}
add_action( 'init', 'categoria_trabajo', 0 );

}

分类标准etiqueta_trabajo

if (  function_exists( 'etiqueta_trabajo' ) ) {

// Register Custom Taxonomy
function etiqueta_trabajo() {

    $args = array(
        'labels'                     => $labels,
        'hierarchical'               => false,
        'public'                     => true,
        'show_ui'                    => true,
        'show_admin_column'          => true,
        'show_in_nav_menus'          => true,
        'show_tagcloud'              => false,
        'query_var'                  => 'etiqueta',
        'rewrite'                    => $rewrite,
        'capabilities'               => $capabilities,
    );
    register_taxonomy( 'etiqueta_trabajo', array( 'trabajo' ), $args );

}
add_action( 'init', 'etiqueta_trabajo', 0 );

}

自定义帖子类型显示在管理员菜单中,但链接的分类法不会出现。

我已将代码与其他源代码进行了比较,但我找不到解决方案。

我感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

我注意到,在您的代码中,您使用的是import { Component } from '@angular/core'; // ... @Component({ templateUrl: 'Edituser.html' }) export class YOURCOMPONENT { // ... constructor () { this.gender = this.editUser.gender; // ... $labels$rewrite,但这些似乎并未在任何地方声明/初始化。

我稍微调整了你的代码,这对我有用:

$capabilities