首页 > 教程 >

WordPress建站教程,纯代码实现wordpress防止发布文章出现标题重复,自动检测重复标题文章

2023-02-15教程围观

简介WordPress代码实现防止发表重复标题的文章,如果对你有帮助就看看吧。其实所有的插件这些的就等于放到function.php的代码片段。function.php里面的插件集成出来也可以做成一个插件,反过来插件也可以集成到function.php里面,插件的好处就是方便管理,但也添加了静态的资源请求,所以就导致了,插件越多也会导致网站卡顿的情况,扯得有点远了,直接上代码。主要修改的地方是:将js

  

WordPress代码实现防止发表重复标题的文章,如果对你有帮助就看看吧。

其实所有的插件这些的就等于放到function.php的代码片段。function.php里面的插件集成出来也可以做成一个插件,反过来插件也可以集成到function.php里面,插件的好处就是方便管理,但也添加了静态的资源请求,所以就导致了,插件越多也会导致网站卡顿的情况,扯得有点远了,直接上代码。

主要修改的地方是:将 js 转为 标签内容,等于消除一个请求,翻译也省了,换成中文。 将下面代码复制粘贴到你主题的 functions.php 文件里面,这个不用解释了吧?

/** * 发表文章时禁止与已存在的标题相重复 * Modify from Plugin: Duplicate   Validate * De ion: this plugin help , not allow publish Duplicate   .  * Author: hasan movahed * Reviser: INLOJV * Version: 1.0 */// 发表文章页面,前端抓取标题并使用AJAX发送请求add_action( 'admin_print_footer_ s', 'duplicate_ s_enqueue_ s', 100 );function duplicate_ s_enqueue_ s() {?>< >jQuery(function($){    function check Ajax( , id,post_type) {        var data = {            action: ' _checks',            post_ :  ,            post_type: post_type,            post_id: id        };        $.post(ajaxurl, data, function(response) {            $('#message').remove();            $('#poststuff').prepend('<div id="message" class="updated below-h2 fade "><p>'+response+'</p></div>');        });     };    $('# ').change(function() {        var   = $('# ').val();        var id = $('#post_ID').val();        var post_type = $('#post_type').val();        check Ajax( , id,post_type);    });});</ ><?php}// 接收前端ajax参数add_action('wp_ajax_ _checks', 'duplicate_ _checks_callback');function duplicate_ _checks_callback(){     global $wpdb;                $  = $_POST['post_ '];    $post_id = $_POST['post_id'];     $ s = "SELECT post_  FROM $wpdb->posts WHERE post_status = 'publish' AND post_type = 'post' AND post_  = '{$ }' AND ID != {$post_id} ";     $results = $wpdb->get_results($ s);     if($results) {        echo "<span style='color:red'>". _( '此标题已存在,请换一个标题!' , '' ) ." </span>";    } else {        echo '<span style="color:green">'._('恭喜,此标题未与其他文章
标题重复!' , '').'</span>';    }     die();}// 检测后端标题并且避免同名文章更新草稿add_action( 'publish_post','duplicate_ s_wallfa_bc' ) ;function duplicate_ s_wallfa_bc( $post ){    global $wpdb ;    $  = $_POST['post_ '] ;    $post_id = $post ;     $w s = "SELECT post_  FROM $wpdb->posts WHERE post_status = 'publish' AND post_type = 'post' AND post_  = '{$ }' AND ID != {$post_id} " ;     $wresults = $wpdb->get_results( $w s ) ;     if ( $wresults ){        $wpdb->update( $wpdb->posts, array( 'post_status' => 'draft' ), array( 'ID' => $post ) ) ;        $arr_params = array( 'message' => '10', 'wallfaerror' => '1' )  ;              $location = add_query_arg( $arr_params , get_edit_post_ ( $post , 'url' ) ) ;        wp_redirect( $location  ) ;                exit;    }}/// 文章提交更新后的提示add_action( 'admin_notices', 'not_published_error_notice' );   function not_published_error_notice() {    if(isset($_GET['wallfaerror']) == 1 ){        ?>        <div class="updated">        <p style='color:red' ><?php _e('貌似已经存在相同标题的文章,若您使用了文章别名作为固定链接,则可以通过修改本文的固定链接来使标题不再重复!' , '') ?></p>        </div>        <?php    }}// 禁用自动保存add_action( 'wp_print_ s', 'disable_autosave' ) ;function disable_autosave(){    wp_deregister_ ( 'autosave' ) ;}

以上就是纯代码实现wordpress防止发布文章出现标题重复,自动检测重复标题文章的教程,希望对大伙有所帮助!


下载链接:网站源码/小程序源码/网站模板下载

Tags: WordPress 教程 建站 代码 文章