web-dev-qa-db-de.com

so gruppieren Sie benutzerdefinierte Beitragstypen

hi wollte wissen, ob ich meine benutzerdefinierten Beitragstypen gruppiere, um sie in einer Gruppe in der WordPress-Back-End-Menüleiste wie folgt zusammenzustellen: Welchen Code muss ich in meiner functions.php verwenden, damit ich meinen benutzerdefinierten Beitrag erstellen kann? tippt ein nettes Aussehen und Gefühl

http://i39.tinypic.com/281u1og.jpg

derzeit verwende ich ein benutzerdefiniertes Plugin, um Funktionen hinzuzufügen, und es sieht so aus

<?php
/**
 * Plugin Name: Custom Functions
 * Plugin URI: http://localhost/
 * Description: This is an awesome custom plugin with functionality that I'd like to keep when switching Themes.
 * Author: Phantom.omaga
 * Version: 0.1.0
 */

/* Place custom code below this line. */

add_action( 'init', 'create_post_type' );

function create_post_type() {  

/*Custom post type Series has been decleared here*/
    register_post_type( 'series',  
        array(  
            'labels' => array(  
                'name' => __( 'Series' ),  
                'singular_name' => __( 'Series' )  
            ),  
        'public' => true,  
        'menu_position' => 40,  
        'rewrite' => array('slug' => 'Series')  
        )  
    );

/*Custom post type Episodes has been decleared here*/
    register_post_type( 'epsodes',  
        array(  
            'labels' => array(  
                'name' => __( 'Episodes' ),  
                'singular_name' => __( 'Episode' )  
            ),  
        'public' => true,  
        'menu_position' => 41,  
        'rewrite' => array('slug' => 'Episodes')  
        )  
    );    

/*Custom post type Mirrors has been decleared here*/
    register_post_type( 'Mirrors',  
        array(  
            'labels' => array(  
                'name' => __( 'Mirrors' ),  
                'singular_name' => __( 'Mirror' )  
            ),  
        'public' => true,  
        'menu_position' => 41,  
        'rewrite' => array('slug' => 'Mirror')  
        )  
    );   

}  


/* Place custom code above this line. */
?>
5
phantom.omaga

Der Filter

In /wp-admin/menu.php finden Sie diesen Filter am Ende der "Add CSS Classes" -Schleife: apply_filters( 'add_menu_classes', $menu )

Die Funktion

Der folgende Code fügt die richtigen Klassen an das erste und vorherige Element an. Es fügt auch das Trennzeichen dazwischen hinzu. Wenn Sie am Ende/nach Ihrer Gruppe ein weiteres Trennzeichen hinzufügen müssen, müssen Sie die Funktion folgendermaßen erweitern:

  • Nehmen Sie das letzte Element in Ihrer Gruppe und behandeln Sie es genau so, wie Sie es aktuell mit Ihrem vorherigen Element behandelt haben.
  • Fügen Sie das Trennzeichen einen Schlüssel nach Ihrem letzten Element ein
  • Fügen Sie die gleichen Klassen dem folgenden/nächsten Element direkt nach Ihrer Gruppe hinzu
  • Überprüfen Sie, ob noch kein Trennzeichen vorhanden ist. Siehe aktuelle Prüfung.

Verwenden Sie das $target-Array, um nach den Namen der Zielmenüelemente zu suchen. Verwenden Sie einfach genau das, was Sie in Ihrem Menü sehen, und fügen Sie vor dem Element ein Trennzeichen ein.


Verschob den Code als public Gist nach GitHub

5
kaiser