≡
  • 网络编程
  • 数据库
  • CMS技巧
  • 软件编程
  • PHP笔记
  • JavaScript
  • MySQL
位置:首页 > CMS技巧 > Wordpress

WordPress纯代码禁止发表重复标题的文章

人气:647 时间:2020-02-16

这篇文章主要为大家详细介绍了WordPress纯代码禁止发表重复标题的文章,具有一定的参考价值,可以用来参考一下。

实所有插件后端代码都等同于加入到functions.php的代码片段,functions.php里的代码片段可以做成插件,那么反过来插件自然也可以集成到functions.php里面。

插件主要是方便管理,但同时也增加了静态资源请求数,如果你知道怎么处理这些请求,其实用不用插件也知道该如何优化网站 —— 扯远了。 下面我就直接贴上代码版的吧。

主要修改的地方是:将js转为script标签内容,等于消除一个请求,翻译也省了,换成中文。 将下面代码复制粘贴到你主题的functions.php文件里面,这个不用解释了吧?
/**
 * 发表文章时禁止与已存在的标题相重复
 * Modify from Plugin: Duplicate Title Validate
 * Description: this plugin help , not allow publish Duplicate Title . 
 * Author: hasan movahed
 * Reviser: INLOJV
 * Version: 1.0
 * Author URI: wallfa .com
 * Reviser URI: inlojv .com
 */
 
 
// 发表文章页面,前端抓取标题并使用AJAX发送请求
add_action( 'admin_print_footer_scripts', 'duplicate_titles_enqueue_scripts', 100 );
function duplicate_titles_enqueue_scripts() {
?>
 
posts WHERE post_status = 'publish' AND post_type = 'post' 
				AND post_title = '{$title}' AND ID != {$post_id} "; 
	$results = $wpdb->get_results($titles); 
	if($results) {
		echo "". _( '此标题已存在,请换一个标题!' , '' ) ." ";
	} else {
		echo ''._('恭喜,此标题未与其他文章标题重复!' , '').'';
	} 
	die();
}
 
// 检测后端标题并且避免同名文章更新草稿
add_action( 'publish_post','duplicate_titles_wallfa_bc' ) ;
function duplicate_titles_wallfa_bc( $post ){
	global $wpdb ;
	$title = $_POST['post_title'] ;
	$post_id = $post ; 
	$wtitles = "SELECT post_title FROM $wpdb->posts WHERE post_status = 'publish' AND post_type = 'post' 
						AND post_title = '{$title}' AND ID != {$post_id} " ; 
	$wresults = $wpdb->get_results( $wtitles ) ; 
	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_link( $post , 'url' ) ) ;
		wp_redirect( $location  ) ;        
        exit ;
	}
}
 
 
 
/// 文章提交更新后的提示
add_action( 'admin_notices', 'not_published_error_notice' );   
function not_published_error_notice() {
    if(isset($_GET['wallfaerror']) == 1 ){
?>

本文来自:http://www.q1010.com/183/9352-0.html

注:关于WordPress纯代码禁止发表重复标题的文章的内容就先介绍到这里,更多相关文章的可以留意四海网的其他信息。

关键词:

您可能感兴趣的文章

上一篇:WordPress模板基本文件
下一篇:WordPress 文章内随机段落插入google adsense广告
热门文章
  • wordpress不同页面侧边栏添加方法(小工具添加侧边栏)
  • wordpress 文章模板页调用特色图像
  • WordPress纯代码禁止发表重复标题的文章
  • WordPress模板基本文件
  • WordPress 文章内随机段落插入google adsense广告
  • wordpress文章结尾显示文章作者、作者信息等内容
  • wordpress 在文章内容的第二段后面插入广告
  • wordpress正文随机段落中插入adsense广告
  • WordPress是用来干什么的
  • wordpress页面和文章的区别
  • 最新文章
    • 使用SQL删除wordpress文章历史版本和删除自动草稿数据的实现方法
    • WordPress是用来干什么的
    • wordpress正文随机段落中插入adsense广告
    • wordpress页面和文章的区别
    • wordpress 在文章内容的第二段后面插入广告
    • wordpress不同页面侧边栏添加方法(小工具添加侧边栏)
    • WordPress 文章内随机段落插入google adsense广告
    • WordPress纯代码禁止发表重复标题的文章
    • WordPress模板基本文件
    • wordpress 文章模板页调用特色图像

四海网收集整理一些常用的php代码,JS代码,数据库mysql等技术文章。