46 lines
1.5 KiB
PHP
46 lines
1.5 KiB
PHP
<?php
|
|
if ( ! defined( 'ABSPATH' ) ) exit;
|
|
|
|
add_action( 'init', 'mcn_register_taxonomy' );
|
|
function mcn_register_taxonomy() {
|
|
$labels = [
|
|
'name' => 'Kategorien',
|
|
'singular_name' => 'Kategorie',
|
|
'search_items' => 'Kategorien suchen',
|
|
'all_items' => 'Alle Kategorien',
|
|
'parent_item' => 'Übergeordnete Kategorie',
|
|
'edit_item' => 'Kategorie bearbeiten',
|
|
'update_item' => 'Kategorie aktualisieren',
|
|
'add_new_item' => 'Neue Kategorie',
|
|
'new_item_name' => 'Name der neuen Kategorie',
|
|
'menu_name' => 'Kategorien',
|
|
];
|
|
|
|
register_taxonomy( 'mc_news_category', 'mc_news', [
|
|
'labels' => $labels,
|
|
'hierarchical' => true,
|
|
'public' => true,
|
|
'show_admin_column' => true,
|
|
'rewrite' => [ 'slug' => 'news-kategorie' ],
|
|
'show_in_rest' => true,
|
|
] );
|
|
|
|
// Standard-Kategorien beim ersten Aufruf anlegen
|
|
add_action( 'init', function() {
|
|
$defaults = [
|
|
'Update' => '🔄',
|
|
'Event' => '🎉',
|
|
'Wartung' => '🔧',
|
|
'Wichtig' => '⚠️',
|
|
'Community' => '👥',
|
|
];
|
|
foreach ( $defaults as $name => $icon ) {
|
|
if ( ! term_exists( $name, 'mc_news_category' ) ) {
|
|
wp_insert_term( $name, 'mc_news_category', [
|
|
'description' => $icon,
|
|
] );
|
|
}
|
|
}
|
|
}, 20 );
|
|
}
|