Möchten Sie Symbole für benutzerdefinierte Beitragstypen in WordPress für neue und bearbeitete Beitragsseiten hinzufügen? Mit unserem Code-Snippet ist das ganz einfach. Werfen wir einen Blick darauf.
Anweisungen:
Fügen Sie diesen Ausschnitt zu functions.php oder zu einem websitespezifischen Plugin hinzu. Vergessen Sie nicht, die URL in Zeile 9 auf den Speicherort Ihres 24px mal 24px großen Symbols zu ändern.
add_action( 'admin_head-post.php', 'post_type_icon');
add_action( 'admin_head-post-new.php', 'post_type_icon');
function post_type_icon() {
global $post_type;
?>
<style>
<?php if($post_type == 'products'){ ?>
#icon-edit {
background: url('<?php echo 'http://example.com/wp-content/themes/theme_name/i/icon_24x24.png';?>') no-repeat; }
<?php } ?>
</style>
<?php
}
Alternativ können Sie diesen Code verwenden. Dieses Snippet erstellt sowohl einen benutzerdefinierten Beitragstyp (in Zeile 9 „products“ genannt) als auch das Menüsymbol für diesen benutzerdefinierten Beitragstyp. Fügen Sie dieses Snippet zu functions.php oder zu einem websitespezifischen Plugin hinzu. In Zeile 10 dieses Snippets legen wir die menu_icon URL auf den Speicherort des 16px mal 16px großen Symbolbilds fest, das im Admin-Menü angezeigt werden soll.
$args = array(
'label' => __('Products'),
'singular_label' => __('Product'),
'public' => true,
'show_ui' => true,
'capability_type' => 'page',
'hierarchical' => false,
'rewrite' => true,
'query_var' => 'products',
'menu_icon' => 'http://site.com/wp-content/themes/theme_name/i/icon_16x16.png',
'supports' => array('title','editor','comments','thumbnail')
);
register_post_type( 'product' , $args );
Hinweis: Wenn Sie zum ersten Mal Code-Schnipsel in WordPress hinzuf ilde{A}gen, lesen Sie bitte unseren Leitfaden, wie Sie Code-Schnipsel richtig in WordPress kopieren / einf ilde{A}gen, damit Sie Ihre Website nicht versehentlich besch ilde{A}digen.
Wenn Ihnen dieser Code-Schnipsel gefallen hat, sollten Sie sich auch unsere anderen Artikel auf der Website ansehen, wie zum Beispiel: Die besten WordPress-Seitenersteller (im Vergleich).
Scheint nicht in WP 3.2.1 zu funktionieren. Ich entwickle ein benutzerdefiniertes Theme und habe meine eigene Funktion in functions.php hinzugefügt und die Aktionen hinzugefügt, aber nichts.
Es scheint, dass die einzigen Stile, die darauf angewendet werden, aus der Stylesheet „colors-fresh.css“ stammen. Ich habe alle Tippfehler überprüft und sichergestellt, dass meine if-Anweisungen mit der richtigen Definition des Beitragstyps übereinstimmen.
Wenn Sie den Quellcode der Admin-Seite anzeigen, sollten Sie sehen können, ob der obige CSS-Code zu den richtigen Admin-Seiten des benutzerdefinierten Beitragstyps hinzugefügt wurde. Dies ist einfach CSS, das die Standard-Symbole überschreibt. Möglicherweise möchten Sie auch versuchen, !important am Ende des CSS hinzuzufügen, um sicherzustellen, dass es Standardwerte überschreibt.
Natürlich, 6 Minuten später, habe ich es herausgefunden. Ich habe die Zeile geändert
zu
Das schien alles zu sein, was nötig war, um es zu beheben. Keine Ahnung, warum die vorherige Zeile bei mir nicht funktionierte, denn logisch hätte sie funktionieren müssen.Äh, Code-Tags funktionieren nicht?
Nein :/ nicht mit diquss,
es kann mit einem Hook gemacht werden
wie hier
add_action("admin_head", array(&$this, "stylize")); //ich benutze Klassen
function stylize() { global $post_type; if($post_type == 'billboard') echo '#icon-edit {background: url("'.plugins_url( 'billboard.png', __FILE__ ).'") no-repeat; }'; }Ja, ich habe darüber nachgedacht, admin_head zu verwenden, aber wir müssen nur das große Symbol auf zwei Seiten ersetzen, daher würde das Hinzufügen zu admin_head den Code immer noch zu jeder Seite hinzufügen.