Frage

Ich verwende das Cherry-Framework auf einer WP-Site.Es verfügt über einen benutzerdefinierten Beitragstyp, der zum Hinzufügen von „Teammitgliedern“ und zum Erstellen von Mitarbeiterseiten usw. verwendet werden kann.

Ich muss dies erweitern, damit ich jedem „Teammitglied“ Tags hinzufügen kann, damit ich sie im Wesentlichen als in einer Abteilung a / b / c / usw. arbeitend kennzeichnen kann.

Mit diesem Code wird der benutzerdefinierte Beitragstyp in der Datei theme-init.php registriert.

/* Our Team */
function my_post_type_team() {
register_post_type( 'team',
    array(
        'label'               => theme_locals("our_team"),
        'singular_label'      => theme_locals("our_team"),
        '_builtin'            => false,
        // 'exclude_from_search' => true, // Exclude from Search Results
        'capability_type'     => 'page',
        'public'              => true,
        'show_ui'             => true,
        'show_in_nav_menus'   => false,
        'menu_position'       => 5,
        'menu_icon'           => ( version_compare( $GLOBALS['wp_version'], '3.8', '>=' ) ) ? 'dashicons-businessman' : '',
        'rewrite'             => array(
                                    'slug'       => 'team-view',
                                    'with_front' => FALSE,
                                ),
        'supports' => array(
                        'title',
                        'editor',
                    'thumbnail',
                    )
    )
);
}
add_action('init', 'my_post_type_team');

Ich möchte hier Tags hinzufügen, damit ich, wenn ich ein neues Teammitglied hinzufüge, es auch einer Abteilung zuordnen kann, indem ich ein bestimmtes relevantes Tag hinzufüge.Derzeit wird das Tag-Editor-Feld nicht auf der Seite „Neu hinzufügen/Bearbeiten“ angezeigt.

Deshalb habe ich den obigen Code angepasst, um eine Registertaxonomie wie diese einzuschließen;

/* Our Team */
function my_post_type_team() {
register_post_type( 'team',
    array(
        'label'               => theme_locals("our_team"),
        'singular_label'      => theme_locals("our_team"),
        '_builtin'            => false,
        // 'exclude_from_search' => true, // Exclude from Search Results
        'capability_type'     => 'page',
        'public'              => true,
        'show_ui'             => true,
        'show_in_nav_menus'   => false,
        'menu_position'       => 5,
        'menu_icon'           => ( version_compare( $GLOBALS['wp_version'], '3.8', '>=' ) ) ? 'dashicons-businessman' : '',
        'rewrite'             => array(
                                    'slug'       => 'team-view',
                                    'with_front' => FALSE,
                                ),
        'supports' => array(
                        'title',
                        'editor',
                    'thumbnail',
                    )
    )
);
register_taxonomy(
    'team_tag',
    'team',
    array(
        'hierarchical'  => false,
        'label'         => theme_locals("tags"),
        'singular_name' => theme_locals("tag"),
        'rewrite'       => true,
        'query_var'     => true
    )
);
}
add_action('init', 'my_post_type_team');

Allerdings wird das Tag-Feld immer noch nicht auf der Bearbeitungsseite im Adminbereich angezeigt.

Jede Hilfe dabei wird sehr geschätzt.

War es hilfreich?

Lösung

Es scheint, dass das Problem teilweise war, um ein Thema-init.php im Kinderthema zu sein, das Teile des Theme-Init.php im Eltern- / Kirschrahmen-Thema überschreiben.

Ich habe das Problem gelöst, indem ich den folgenden Code in das Thema-init.php-thema-thema-thema fügst;

generasacodicetagpre.

Andere Tipps

Versuchen Sie es mit

generasacodicetagpre.

register_post_type( 'team',
    array(
        'label'               => theme_locals("our_team"),
        'singular_label'      => theme_locals("our_team"),
        '_builtin'            => false,
        // 'exclude_from_search' => true, // Exclude from Search Results
        'capability_type'     => 'page',
        'public'              => true,
        'show_ui'             => true,
        'show_in_nav_menus'   => false,
        'menu_position'       => 5,
        'menu_icon'           => ( version_compare( $GLOBALS['wp_version'], '3.8', '>=' ) ) ? 'dashicons-businessman' : '',
        'rewrite'             => array(
                                    'slug'       => 'team-view',
                                    'with_front' => FALSE,
                                ),
        'supports' => array(
                        'title',
                        'editor',
                    'thumbnail',
                    ),
        'taxonomies' => array('team_tag')
    )
);

Sie können sehen, dass ich das hinzugefügt habe taxonomies Parameter zum register_post_type Funktion.

Obwohl dieser Code funktionieren sollte, können Sie später versuchen, die Beziehung wie folgt zu erstellen:

add_action('init', 'add_tax_post_rel');

function add_tax_post_rel() {
    register_taxonomy_for_object_type('team_tag', 'team', 11);
}

Sie können dies versuchen

generasacodicetagpre.

kann dies sein, dies wird Ihnen helfen

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit wordpress.stackexchange
scroll top