禁用从主题或插件内部自动保存和发布修订

时间:2016-02-02 作者:T.Todua

默认情况下,禁用自动保存和发布修订的方法是修改wp-config.php. 有没有一种方法可以在plugin 或主题functions.php?

4 个回复
SO网友:T.Todua

我找到了以下代码:

define(\'my_revisions_amount\', 1);         // let keep only one revision
define(\'my_autosave_interval\', 600);      // 600 minutes is enough

if (is_admin()){   
    add_filter( \'wp_revisions_to_keep\', function(){
        return my_revisions_amount;
    } );
    add_filter( \'wp_print_scripts\', function(){
        wp_localize_script( \'autosave\', \'autosaveL10n\', 
              array(
                   \'autosaveInterval\'=> my_autosave_interval,
                   \'blog_id\'         => get_current_blog_id(),
              ) 
        );  
    }, 11 );    
}

SO网友:marikamitsos

您提到:

有没有一种方法可以在插件或主题函数中实现这一点。php?

您可能需要尝试以下代码。只需将其放在主题的函数中即可。php文件。使用它,您不必更改wp配置。php文件。

define(\'WP_POST_REVISIONS\', false);
function disable_autosave() {
    wp_deregister_script(\'autosave\');
}
add_action(\'wp_print_scripts\', \'disable_autosave\');

SO网友:tpaksu

这是我禁用自动保存的方法。可以改进:

jQuery(document).ajaxSend(function( event, jqxhr, settings) {
    if(settings && settings.data && settings.data.indexOf("wp_autosave") > 0) {
        jqxhr.abort();
    }
});
只需在将ajax请求发送到服务器之前检查它,然后如果其数据包含wp_autosave 一串

SO网友:Intelligent Web Solutions

对于使用WordPress 5.0以上版本和Gutenberg编辑器的人,下面的代码片段可以禁用自动绘图/保存。

/**
 * Disables auto-saving feature for Gutenberg Editor (set interval by 3600s)
 */
add_filter( \'block_editor_settings\', \'rsm0128_block_editor_settings\', 10, 2 );
function rsm0128_block_editor_settings( $editor_settings, $post ) {
    $editor_settings[\'autosaveInterval\'] = 3600;
    return $editor_settings;
}

相关推荐

如何修改WP_INCLUDE/BLOCKS/LATEST_posts.php

我是WordPress开发的初学者,希望得到一些帮助。我在一个简单的WordPress网站上工作。基本上,用户希望在主页上显示最新的帖子。我使用了最新帖子块,并将其设置为显示整个帖子内容,现在用户不希望帖子标题链接到单个帖子页面(因为帖子的内容显示在主页上)。如何安全地修改模板文件,使其像h2标记一样使用,而不是在主题中使用的href标记。我知道您可以创建子主题并修改wp_content 文件,但我不确定如何处理中的文件wp_include. 我读到一些关于修改functions.php 但我不确定,如果