グーテンベルクのヒントを永久に非アクティブ化-グーテンベルクではない


11

私はグーテンベルクがとても好きですが、各ページの読み込みの最初のヒントは私を怒らせます。私はコードを介して永遠につまらないヒントを無効にしたいと思います。

「Gutenbergを無効にする」プラグインを投稿しないでください。すでに見たことがあります。私のテーマの数行のコードを介してそれを実行したいと思います。

フックがあるはずですが、見つかりませんでした。ヒントをありがとう。

ここに画像の説明を入力してください

回答:


12

ここに画像の説明を入力してください

アップデート#1:

@leymannxに質問した後、これらの設定がどのように保存されているかを確認しました。設定は永続的ではなく、ブラウザにとして保存されることがわかりましたlocalStorage

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

アップデート#2:

dispatch('core/nux').disableTips()NUXパッケージ)とアクションフックを使用して、グーテンベルクのヒントを無効にできますenqueue_block_editor_assets

ファイルfunctions.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');

ファイルdisable-tips.js

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

これはすべてのユーザーに対してグローバルですか?これをコードごとに構成する方法はありますか?それで、クライアントにプラグインを出荷すると、このプラグインがアクティブになるとヒントが非アクティブになりますか?
leymannx

1
管理領域のオプション可能なチェックボックスの場合、値をどこかに保存する必要があるため、コード内で値を初期化または何かのすべてのユーザーに設定できるようにする必要があるため、それらをすべて切り替えることができます。その値をDBに保存します
Daniel Vickers

1
@leymannxこれは変更した後、追加のコード(JS + PHP)が必要となるareTipsEnabledときにユーザがログイン中に、DBの状態を書き込みおよびリストア。
NMR

1
それは素晴らしいです。私はそれを明日試し、それがうまくいくかどうか答えを確認します。ありがとうございました!
user3135691

1
@ user3135691プラグインファイルで置き換えるget_stylesheet_directory_uri() . '/disable-tips.js'plugins_url('/disable-tips.js', __FILE__)
nmr

2

@nmrが発見したように、これはブラウザ単位でのみ保存されるようです。CSSで単純に非表示にする回避策を見つけましたが。早くて汚い。

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;
}

ソース:Gutenbergのテーマエディタースタイルの作成


はい、この解決策も思いついたのですが、あなたが言ったように、それは簡単なのです。ご協力ありがとうございました。
user3135691
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.