Disattiva i suggerimenti di Gutenberg per sempre, non Gutenberg


11

Gutenberg mi piace molto, tuttavia, i suggerimenti all'inizio di ogni caricamento della pagina mi fanno impazzire. Vorrei disabilitare i suggerimenti fastidiosi per sempre e sempre tramite codice.

Per favore, non pubblicare il plugin "Disable Gutenberg", l'ho già visto. Voglio farlo tramite un paio di righe di codice nel mio tema.

Deve esserci un gancio, ma non sono riuscito a trovarlo. Grazie per un suggerimento.

inserisci qui la descrizione dell'immagine

Risposte:


12

inserisci qui la descrizione dell'immagine

Aggiornamento n. 1:

Dopo aver chiesto a @leymannx ho verificato come sono memorizzate queste impostazioni. Si è scoperto che le impostazioni non sono permanenti, ma vengono salvate nel browser come localStorage.

key: WP_DATA_USER_{id}:
value: {
    "core/nux":{
        "preferences":{
            "areTipsEnabled":false,
            "dismissedTips":{}
        }
    },
    //"core/edit-post"
    //...

Aggiornamento n. 2:

I suggerimenti di Gutenberg possono essere disabilitati usando dispatch('core/nux').disableTips()( pacchetto NUX ) e il gancio di azione enqueue_block_editor_assets.

file funzioni.php :

function se334561_editor_tips() {

    wp_enqueue_script(
        'se334561-js',
        // --- to use in plugin ---
        // plugins_url('/disable-tips.js', __FILE__),
        get_stylesheet_directory_uri() . '/disable-tips.js',
        array('wp-blocks')
    );
}
add_action('enqueue_block_editor_assets', 'se334561_editor_tips');

file disable-tips.js :

jQuery(document).ready(function(){
    var isVisible = wp.data.select('core/nux').areTipsEnabled()
    if (isVisible) {
        wp.data.dispatch('core/nux').disableTips();
    }
});

È globale per ogni utente? C'è un modo per configurare anche questo per codice? In modo che quando invio un plug-in a un client, i suggerimenti vengono disattivati ​​quando viene attivato?
leymannx,

1
Se è una casella di controllo in grado di abilitare le opzioni nell'area di amministrazione, saranno disponibili per disattivarla per tutti, poiché i valori devono essere archiviati da qualche parte, dovresti nel codice essere in grado di impostare quel valore per tutti gli utenti su init o qualcosa del genere, prova a trovare dove memorizza quel valore nel DB
Daniel Vickers il

1
@leymannx Ciò richiederebbe un codice aggiuntivo (js + php) che, dopo la modifica areTipsEnabled, scrive lo stato su DB e lo ripristina quando l'utente accede.
nmr

1
È fantastico, lo proverò domani e controllerò la risposta se funziona. Grazie!
user3135691

1
@ user3135691 Nel file del plugin sostituire get_stylesheet_directory_uri() . '/disable-tips.js' con plugins_url('/disable-tips.js', __FILE__).
nmr

2

Come ha scoperto @nmr, questo sembra essere memorizzato solo dal punto di vista del browser. Anche se ho trovato una soluzione alternativa per nasconderlo semplicemente tramite CSS. Veloce e sporco.

functions.php:

// Add backend styles for Gutenberg.
add_action('enqueue_block_editor_assets', 'gutenberg_editor_assets');

function gutenberg_editor_assets() {
  // Load the theme styles within Gutenberg.
  wp_enqueue_style('my-gutenberg-editor-styles', get_theme_file_uri('/assets/gutenberg-editor-styles.css'), FALSE);
}

assets/gutenberg-editor-styles.css:

.components-popover.nux-dot-tip {
  display: none !important;
}

Fonte: creazione di stili di editor di temi per Gutenberg


Sì, anche questa soluzione mi è venuta in mente, ma come hai detto: è veloce e sporco. Grazie per l'aiuto.
user3135691
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.