Benutzerdefinierte svg-admin-Menü-Symbol in WordPress
Ich bin wirklich zählen auf Ihre Hilfe in dieser. Ich suchte eine Menge und keine Lösung gefunden. Ich möchte ein benutzerdefiniertes Symbol für mein plugin im admin-Menü, und ich möchte es zu integrieren, die gut mit dem Farbschema.
Sah ich hier https://codex.wordpress.org/Function_Reference/add_menu_page
Unter $icon_url
(WP 3.8+), Wenn 'data:image/svg+xml;base64,...", die angegebene SVG-Daten
image ist verwendet als CSS-hintergrund -
Jedoch, wenn ich eine URL in ein SVG-Symbol gibt, alles was ich bekomme ist ein img mit SVG in das src-Attribut, so dass es nicht zu integrieren, sich überhaupt mit dem Farbschema. Es soll ein CSS-hintergrund.
Auch, ich verstehe das nicht data:image/svg+xml;base64...
Was bedeutet es genau?
Ich habe versucht, die Einbettung von inline-SVG in die $icon_url
aber offensichtlich funktioniert es nicht, aber ich hatte gerade, es zu versuchen.
Dashicons sind nicht eine option, es gibt kein Symbol, es geeignet für mein Projekt.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Schritt für Schritt beispielsweise mit FontAwesome:
Einschließlich Farbe und benutzerdefinierte post-Typen ?
1 Wählen Sie das Symbol
2 Holen Sie sich die SVG -
fa
Präfix - in meinem Fall ist das eine "Flasche.svg".Bringen die SVG in WordPress
In Ihrem
functions.php
, in denen Sie sich Ihre benutzerdefinierten post-Typ, fügen Sie den folgenden Codeausschnitt:Wichtige Hinweise:
base64_encode
ist die kopiert raw-string vom Font-Awesomes github-Seite.fill="black"
- Attribut der Pfad/s-Elemente - dies ermöglicht die Farbe zu ändern, die von WordPress.viewBox
festgelegt werden müssen, und richtig eingestellt, das bedeutet, er muss die Koordinaten und die Größe der box nach dem Pfad(s), für FontAwesome SVGs hier - lassen Sie einfach das Attribut gibt 😉 Auch diefill
Attribut für Pfade müssen gesetzt werden, aber wählen Sie einige Neutrale start Farbe, da die re-färben geschieht beim laden der Seite (so dass Sie sehen können Ihre ursprünglichen füllen Sie für eine Sekunde...)Ich habe die Lösung durch die Analyse von Woocommerce. Wenn keine url angegeben, um die
add_menu_page
Funktion, die WordPress verwendet die Standard-dashicon. So ist es nur eine Frage der überschreiben der Standard-Stil. Wie fügen Sie diese zu admin styles:Ich konvertiert svg-font auf Icomoon.
Dachte nur, ich sollte Folgendes hinzufügen:
Bekommen die SVG automatisch neu Farbe passend zu dem Thema, die es braucht, um ein fill-Attribut. Dies ist, weil es dynamisch verändert durch Schrift, und sonst nicht weiß, was ein Teil zu re-Farbe.
Nachdem Sie umgewandelt haben, die
icondata
in base-64, richtigen Weg zu finden, es ist wie dieser;Das "," ist wichtig
Den
svg
- Datei muss diefill
Attribut in es an die Arbeit. Öffnen Sie die svg-Datei in einem editor wie Atom, und stellen Sie sicher, es sieht wie folgt aus:<path fill="black" d="....
Können jede Art von Farbe, die Sie wollen, in der es, WordPress JS verwendet, um automatisch aktualisieren Sie die fill-Wert basierend auf der admin-theme.
Müssen Sie fügen Sie eine Base64-codierte Bild (Daten-URI), in der
src
...Mehr auf Wikipedia.