Answers:
从@leymannx询问后,我检查了这些设置的存储方式。原来,设置不是永久性的,它们以形式保存在浏览器中localStorage
。
key: WP_DATA_USER_{id}:
value: {
"core/nux":{
"preferences":{
"areTipsEnabled":false,
"dismissedTips":{}
}
},
//"core/edit-post"
//...
可以使用dispatch('core/nux').disableTips()
(NUX程序包)和动作挂钩禁用古腾堡(Gutenberg)技巧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();
}
});
areTipsEnabled
状态写入DB并在用户登录时将其还原。–
get_stylesheet_directory_uri() . '/disable-tips.js'
为plugins_url('/disable-tips.js', __FILE__)
。
正如@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;
}