Title: Plugin Posttype Metabox Remove
Last modified: 19. August 2024

---

# Plugin Posttype Metabox Remove

 *  [mikonoru](https://de.wordpress.org/support/users/mikonoru/)
 * (@mikonoru)
 * [vor 1 Jahr, 9 Monaten](https://de.wordpress.org/support/topic/plugin-posttype-metabox-remove/)
 * Hallo,
 * ich arbeite daran, ein Plugin für WordPress zu erstellen. Dabei bin ich immer
   wieder auf das Problem gestoßen, dass einige meiner Post-Typen eigene Metaboxen
   für die Kategorisierung erhalten haben. Allerdings werden die Standard-Metaboxen
   weiterhin angezeigt. Nun habe ich das Problem, dass die Auswahl der Kategorie
   zweimal vorhanden ist, was unnötig ist.
 * Daher habe ich begonnen, nach einer Lösung zu suchen, um die Standard-Metabox
   zu entfernen, komme aber einfach nicht weiter.
 *     ```wp-block-code
          public function register_taxonomy(){      $args = array(        'labels' => $this->taxLabel,        'public' => true,        'hierarchical' => true,        'show_ui' => false,        'show_in_rest' => true,      );      register_taxonomy($this->typeTax, $this->slug, $args); $location_args = array(        'labels'        => $this->locationLabel,        'public'        => true,        'hierarchical'  => true,        'show_ui'       => false,        'show_in_rest'  => true,      );      register_taxonomy($this->locationTax, $this->slug, $location_args);    }
       ```
   
 * 
   Wenn ich im Script `'show_ui' => false` anwende, erreiche ich zwar mein Ziel,
   in der Post-Erstellung nur noch meine eigene Metabox zu haben, allerdings bin
   ich dann nicht mehr berechtigt, in WordPress die Kategorien zu bearbeiten.
 *     ```wp-block-code
        add_action('add_meta_boxes', array($this, 'remove_default_category_metabox'), 11);  public function remove_default_category_metabox(){        // Die Standard-Metabox für die Kategorie-Taxonomie entfernen        remove_meta_box('categorydiv', $this->slug, 'side'); // Für Standard-Kategorien        remove_meta_box('tagsdiv-news_category', $this->slug, 'side'); // Für nicht-hierarchische benutzerdefinierte Taxonomien        remove_meta_box('news_categorydiv', $this->slug, 'side'); // Für hierarchische benutzerdefinierte Taxonomien    }
       ```
   
 * Das `add_action` habe ich aufgerufen, nachdem meine Taxonomie registriert wurde.
   Das `remove_default_category_metabox` habe ich schon ein paar Mal im Netz gefunden,
   macht aber einfach gar nichts.
 * Vielleicht kann mir jemand von euch helfen. Ich hoffe, ihr versteht mein Problem
   und was ich erreichen möchte.
 * Ich bedanke mich im Voraus.

Ansicht von 10 Antworten – 1 bis 10 (von insgesamt 10)

 *  Moderator [Bego Mario Garde](https://de.wordpress.org/support/users/pixolin/)
 * (@pixolin)
 * Moderator (nicht mehr aktiv)
 * [vor 1 Jahr, 9 Monaten](https://de.wordpress.org/support/topic/plugin-posttype-metabox-remove/#post-162673)
 * Ist das ein Übertragungsfehler oder gewollt, dass du zweimal `register_taxonomy()`
   verwendest? Das könnte erklären, wieso du zwei Eingabefelder für die Taxonomy
   hast.
 * Da wir hier vor allem Anwendungssupport anbieten, wäre deine Frage zur Programmierung
   in [WordPress Stackexchange](https://wordpress.stackexchange.com/) besser aufgehoben.
 *  Thread-Starter [mikonoru](https://de.wordpress.org/support/users/mikonoru/)
 * (@mikonoru)
 * [vor 1 Jahr, 9 Monaten](https://de.wordpress.org/support/topic/plugin-posttype-metabox-remove/#post-162675)
 * Es sind Tatsächlich Zwei Kategorie-Bereiche die ich Hinzufüge. Einmal ein Typ
   und einmal eine Location.
   zum wo es besser aufgehoben wäre:kann ich das hier 
   verschieben? oder ist das eine Komplett eigene Seite? 😀
    -  Diese Antwort wurde vor 1 Jahr, 9 Monaten von [mikonoru](https://de.wordpress.org/support/users/mikonoru/)
      geändert.
 *  Moderator [Hans-Gerd Gerhards](https://de.wordpress.org/support/users/hage/)
 * (@hage)
 * [vor 1 Jahr, 9 Monaten](https://de.wordpress.org/support/topic/plugin-posttype-metabox-remove/#post-162678)
 * Hallo [@mikonoru](https://de.wordpress.org/support/users/mikonoru/)
    schau da
   mal bitte rein: Das kann nicht verschoben werden und hat hier mit dem wordpress.
   org-Bereich nichts zu tun. Das musst du dann da noch mal neu reinschreiben.
 * Viele Grüße
    Hans-Gerd
 *  Moderator [Bego Mario Garde](https://de.wordpress.org/support/users/pixolin/)
 * (@pixolin)
 * Moderator (nicht mehr aktiv)
 * [vor 1 Jahr, 9 Monaten](https://de.wordpress.org/support/topic/plugin-posttype-metabox-remove/#post-162679)
 * > Nun habe ich das Problem, dass die Auswahl der Kategorie zweimal vorhanden 
   > ist, was unnötig ist.
 * Zwei Taxonomie-Arten, zwei Eingabefelder – oder verstehe ich da etwas falsch?
 *  Thread-Starter [mikonoru](https://de.wordpress.org/support/users/mikonoru/)
 * (@mikonoru)
 * [vor 1 Jahr, 9 Monaten](https://de.wordpress.org/support/topic/plugin-posttype-metabox-remove/#post-162681)
 * „Öffnungszeiten Typen“ sowie „Standorte“ ist der automatisch erstelle von WordPress
   wenn man Kategorien Registriert
   das „Standort und Typ auswählen“ ist meine eigene
   Metabox wo beides als Dropdown ausgewählt werden kann.die ersten beiden die Standard
   mäßig erzeugt werden sind überflüssig und nicht notwendig.
 * ![](https://ibb.co/NtDzD0p)
    -  Diese Antwort wurde vor 1 Jahr, 9 Monaten von [mikonoru](https://de.wordpress.org/support/users/mikonoru/)
      geändert.
 *  Thread-Starter [mikonoru](https://de.wordpress.org/support/users/mikonoru/)
 * (@mikonoru)
 * [vor 1 Jahr, 9 Monaten](https://de.wordpress.org/support/topic/plugin-posttype-metabox-remove/#post-162683)
 * Also ich würde ja n Bild Hochladen, aber es funktioniert leider nicht. 🙂
 *  Moderator [Bego Mario Garde](https://de.wordpress.org/support/users/pixolin/)
 * (@pixolin)
 * Moderator (nicht mehr aktiv)
 * [vor 1 Jahr, 9 Monaten](https://de.wordpress.org/support/topic/plugin-posttype-metabox-remove/#post-162684)
 * Wie lautet denn der Code zum Registrieren des Custom Post Type?
 * Mit unvollständigem Einblick in den Code ist es immer schwierig, eine Aussage
   zu treffen.
 *  Thread-Starter [mikonoru](https://de.wordpress.org/support/users/mikonoru/)
 * (@mikonoru)
 * [vor 1 Jahr, 9 Monaten](https://de.wordpress.org/support/topic/plugin-posttype-metabox-remove/#post-162685)
 * [https://ibb.co/NtDzD0p](https://ibb.co/NtDzD0p)
 *  Thread-Starter [mikonoru](https://de.wordpress.org/support/users/mikonoru/)
 * (@mikonoru)
 * [vor 1 Jahr, 9 Monaten](https://de.wordpress.org/support/topic/plugin-posttype-metabox-remove/#post-162686)
 * [@pixolin](https://de.wordpress.org/support/users/pixolin/)
 *     ```wp-block-code
       <?php// Beenden, wenn direkt aufgerufenif (!defined('ABSPATH')) {    die(-1); // Exit if accessed directly.}class OpeningHoursPostType{    /**     * @var string $slug Der Slug für den benutzerdefinierten Post-Typ     */    private $slug = 'opening_hours';    /**     * @var string $typeTax Der Slug für die Taxonomie "Typ"     */    private $typeTax = OPENING_TYPE;    /**     * @var string $locationTax Der Slug für die Taxonomie "Standort"     */    private $locationTax = 'location';    /**     * @var array $postTypeLabel Die Labels für den benutzerdefinierten Post-Typ     */    private $postTypeLabel;    /**     * @var array $taxLabel Die Labels für die Taxonomie "Typ"     */    private $taxLabel;    /**     * @var array $locationLabel Die Labels für die Taxonomie "Standort"     */    private $locationLabel;    /**     * Singleton-Instanz     * @var self     */    protected static $instance;    /**     * Stellt sicher, dass nur eine Instanz der Klasse existiert (Singleton-Pattern)     *      * @return self     */    public static function instance()    {        if (!self::$instance) {            self::$instance = new self;        }        return self::$instance;    }    /**     * Konstruktor     * Initialisiert die Slugs und Labels für den Post-Typ und die Taxonomien     */    public function __construct()    {        $this->postTypeLabel = array(            'name'          => __('Öffnungszeiten', 'plugin'),            'singular_name' => __('Öffnungszeit', 'plugin'),            'edit_item'     => __('Öffnungszeit bearbeiten', 'plugin')        );        $this->taxLabel = array(            'name'          => __('Öffnungszeiten Typen', 'plugin'),            'singular_name' => __('Öffnungszeiten Typ', 'plugin')        );        $this->locationLabel = array(            'name'          => __('Standorte', 'plugin'),            'singular_name' => __('Standort', 'plugin')        );    }    /**     * Registriert den benutzerdefinierten Post-Typ     */    public function register_posttype()    {        $args = array(            'labels'              => $this->postTypeLabel,            'public'              => true,            'has_archive'         => true,            'show_in_menu'        => false,            'show_in_rest'        => true, // Sichtbar in der REST API            'publicly_queryable'  => true,            'menu_icon'           => 'dashicons-clock',            'supports'            => array('title', 'editor', 'author', 'excerpt'),        );        register_post_type($this->slug, $args);    }        /**     * Registriert die benutzerdefinierten Taxonomien     */    public function register_taxonomy()    {        $args = array(            'labels'        => $this->taxLabel,            'public'        => true,            'hierarchical'  => true,            // 'show_ui'       => false,            'show_in_rest'  => true,        );        register_taxonomy($this->typeTax, $this->slug, $args);        $location_args = array(            'labels'        => $this->locationLabel,            'public'        => true,            'hierarchical'  => true,            // 'show_ui'       => false,            'show_in_rest'  => true,        );        register_taxonomy($this->locationTax, $this->slug, $location_args);    }    /**     * Fügt die Aktionen zum Registrieren des Post-Typs und der Taxonomien hinzu     */    public function register()    {        add_action('init', array($this, 'register_posttype'));        add_action('init', array($this, 'register_taxonomy'));        add_action('admin_menu', array($this, 'add_main_menu'));    }    /**     * Fügt das Hauptmenü und die Untermenüs im Admin-Bereich hinzu     */    public function add_main_menu()    {        // Fügt das Submenü für Öffnungszeiten hinzu        add_submenu_page(            'wp_menu',            __('Öffnungszeiten', 'plugin'),            __('Öffnungszeiten', 'plugin'),            'manage_options',            'edit.php?post_type=' . $this->slug        );        // Fügt das Submenü für Öffnungszeiten Typen hinzu        add_submenu_page(            'wp_menu',            __('Öffnungszeiten Typen', 'plugin'),            __('Öffnungszeiten Typen', 'plugin'),            'manage_options',            'edit-tags.php?taxonomy=' . $this->typeTax . '&post_type=' . $this->slug        );        // Fügt das Submenü für Standorte hinzu        add_submenu_page(            'wp_menu',            __('Standorte', 'plugin'),            __('Standorte', 'plugin'),            'manage_options',            'edit-tags.php?taxonomy=' . $this->locationTax . '&post_type=' . $this->slug        );    }}// Erstelle eine Instanz der OpeningHoursPostType-Klasse und registriere den Post-Typ und die Taxonomien$openingHoursPostType = OpeningHoursPostType::instance();$openingHoursPostType->register();?>
       ```
   
 *  Moderator [Bego Mario Garde](https://de.wordpress.org/support/users/pixolin/)
 * (@pixolin)
 * Moderator (nicht mehr aktiv)
 * [vor 1 Jahr, 9 Monaten](https://de.wordpress.org/support/topic/plugin-posttype-metabox-remove/#post-162687)
 * Was ändert sich, wenn du bei der Registrierung des CPT die Taxonomy mit angibst?
 *     ```wp-block-code
       public function register_posttype()    {        $args = array(            'labels'              => $this->postTypeLabel,            'public'              => true,            'has_archive'         => true,            'show_in_menu'        => false,            'show_in_rest'        => true, // Sichtbar in der REST API            'publicly_queryable'  => true,            'menu_icon'           => 'dashicons-clock',            'taxonomies'          => array( 'opening_hours', 'location' ),            'supports'            => array('title', 'editor', 'author', 'excerpt'),        );        register_post_type($this->slug, $args);    }
       ```
   

Ansicht von 10 Antworten – 1 bis 10 (von insgesamt 10)

Das Thema „Plugin Posttype Metabox Remove“ ist für neue Antworten geschlossen.

## Schlagwörter

 * [coding](https://de.wordpress.org/support/topic-tag/coding/)
 * [plugin](https://de.wordpress.org/support/topic-tag/plugin/)

 * In: [Plugins](https://de.wordpress.org/support/forum/plugins/)
 * 10 Antworten
 * 3 Teilnehmer
 * Letzte Antwort von: [Bego Mario Garde](https://de.wordpress.org/support/users/pixolin/)
 * Letzte Aktivität: [vor 1 Jahr, 9 Monaten](https://de.wordpress.org/support/topic/plugin-posttype-metabox-remove/#post-162687)
 * Status: nicht gelöst

## Themen

### Beliebteste Themen

### Unbeantwortete Themen

### Nicht-Support-Themen

### Gelöste Themen

### Ungelöste Themen

### Alle Themen
