Dove posso trovare le icone dei blocchi Gutenberg?

12 feb 2019, 11:45:46
Visualizzazioni: 57.9K
Voti: 23

Esiste una documentazione che mostri i nomi delle icone dei blocchi Gutenberg nella documentazione di WordPress?

Icone dei blocchi Gutenberg

Per darvi un contesto, sto utilizzando i blocchi ACF per Gutenberg e ho bisogno di trovare un riferimento per 'icon'.

add_action('acf/init', 'my_acf_init');
function my_acf_init() {

    // verifica se la funzione esiste
    if( function_exists('acf_register_block') ) {

        // registra un blocco testimonial
        acf_register_block(array(
            'name'              => 'testimonial',
            'title'             => __('Testimonial'),
            'description'       => __('Un blocco testimonial personalizzato.'),
            'render_callback'   => 'my_acf_block_render_callback',
            'category'          => 'formatting',
            'icon'              => 'admin-comments',
            'keywords'          => array( 'testimonial', 'quote' ),
        ));
    }
}
2
Commenti

Esiste un modo per integrare la nostra libreria Font Awesome esistente in questo modulo Icon block?

Jen Niles Jen Niles
15 feb 2022 21:56:39

C'è questo sito web che mostra le icone all'interno della libreria @wordpress/icons. Quelle icone sono quelle utilizzate nei blocchi core. Ti mostrerà come importare l'icona in JavaScript e l'SVG. Spero sia utile.

Roel Magdaleno Roel Magdaleno
16 mag 2023 00:05:34
Tutte le risposte alla domanda 4
2
30

Qui puoi trovare un elenco di tutte le icone di Gutenberg con nome e anteprima: https://wordpress.github.io/gutenberg/?path=/story/icons-icon--library

Per utilizzarle, dovrai copiare il codice sorgente SVG effettivo.


Esempio: registrare un blocco ACF con l'icona postExcerpt

Icona postExcerpt di Gutenberg

Dovrai ispezionare l'elemento effettivo ed estrarre il codice sorgente dell'icona SVG da https://wordpress.github.io/gutenberg/?path=/story/icons-icon--library:

<svg><path d="M12.75 9.333c0 .521-.102.977-.327 1.354-.23.386-.555.628-.893.774-.545.234-1.183.227-1.544.222l-.12-.001v-1.5h.123c.414.001.715.002.948-.099a.395.395 0 00.199-.166c.05-.083.114-.253.114-.584V7.2H8.8V4h3.95v5.333zM7.95 9.333c0 .521-.102.977-.327 1.354-.23.386-.555.628-.893.774-.545.234-1.183.227-1.544.222l-.12-.001v-1.5h.123c.414.001.715.002.948-.099a.394.394 0 00.198-.166c.05-.083.115-.253.115-.584V7.2H4V4h3.95v5.333zM13 20H4v-1.5h9V20zM20 16H4v-1.5h16V16z"></path></svg>

Quindi, puoi registrare il tuo blocco in questo modo:

add_action('acf/init', 'my_acf_blocks_init');
function my_acf_blocks_init() {

    // Verifica se la funzione esiste.
    if( function_exists('acf_register_block_type') ) {

        // Registra un blocco testimonial.
        acf_register_block_type(array(
            'name'              => 'testimonial',
            'title'             => __('Testimonial'),
            'description'       => __('Un blocco testimonial personalizzato.'),
            'render_template'   => 'template-parts/blocks/testimonial/testimonial.php',
            'category'          => 'formatting',
            'icon'              => '<svg><path d="M12.75 9.333c0 .521-.102.977-.327 1.354-.23.386-.555.628-.893.774-.545.234-1.183.227-1.544.222l-.12-.001v-1.5h.123c.414.001.715.002.948-.099a.395.395 0 00.199-.166c.05-.083.114-.253.114-.584V7.2H8.8V4h3.95v5.333zM7.95 9.333c0 .521-.102.977-.327 1.354-.23.386-.555.628-.893.774-.545.234-1.183.227-1.544.222l-.12-.001v-1.5h.123c.414.001.715.002.948-.099a.394.394 0 00.198-.166c.05-.083.115-.253.115-.584V7.2H4V4h3.95v5.333zM13 20H4v-1.5h9V20zM20 16H4v-1.5h16V16z"></path></svg>'
        ));
    }
}

Risultato:

Blocco testimonial con icona personalizzata

Maggiori informazioni sui blocchi ACF su https://www.advancedcustomfields.com/resources/acf_register_block_type/

22 apr 2020 21:54:26
Commenti

Questa dovrebbe essere la risposta corretta, grazie!

Nathan Nathan
21 lug 2021 03:53:52

+1 per avermi ricordato che posso semplicemente inserire un SVG lì!!! - ma nota per gli altri / ricorda se stai usando il block.json - nota le virgolette! : )

sheriffderek sheriffderek
28 ott 2022 02:44:58
3
23

Gutenberg utilizza le dashicons.
Puoi trovare un esempio di icona qui, e un cheat sheet delle dashicons qui.

12 feb 2019 12:36:32
Commenti

Molte delle icone di Gutenberg sono SVG personalizzati, quindi non aspettarti di trovare tutte le icone nella lista delle dashicon. Puoi comunque passare un SVG personalizzato alla registrazione del blocco ACF.

tmdesigned tmdesigned
12 feb 2019 12:44:55

In questo caso, le dashicons funzionano per quello che mi serve. Darò un'occhiata agli SVG personalizzati per ACF, grazie.

Sam Sam
12 feb 2019 13:34:31

Il prefisso "dashicons-" dovrebbe essere rimosso per far funzionare questo

Tahi Reu Tahi Reu
27 dic 2021 23:26:27
0

Sarei felice di essere corretto su questo punto, ma sembra che solo le dashicons possano essere utilizzate "per nome" in questo modo – le icone di Gutenberg sembrano esistere come HTML inline (JSX) nei file .js (gutenberg/packages/icons/src/library) quindi non penso possano essere utilizzate da PHP.

Se stai cercando le icone effettive, molte di esse sembrano essere icone Material UI. Ad esempio, l'icona del blocco Immagine e la matita dalla barra superiore:

icona "Foto" di material design icona "Crea" di material design

quindi potresti usare quelle invece, o semplicemente copiare l'SVG che desideri dal repository GitHub. Ma in ogni caso dovrai gestire manualmente alcuni SVG

9 apr 2020 07:06:29
0

È anche possibile creare una classe CSS come:

 .dashicons-travel-new{
     background-image: url(../images/travel.svg);
     background-repeat: no-repeat;
     background-attachment: fixed;
     background-position: center;
     background-size: 100% 100%;
 }
 acf_register_block_type(array(
        'name'              => 'testimonial',
        ...
        'icon'              => 'travel-new',
        ...
    ));
15 dic 2023 20:20:23