这篇文章主要讲解了“WordPress中如何添加投稿功能”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“WordPress中如何添加投稿功能”吧! 1、首先在当前主题的目录下新建一个php文件,命名为tougao-page.php,然后将page.php中的所有代码复制到tougao-page.php中;2、删除tougao-page.php开头的所有注释,即 /* 与 */ ,以及它们之间的所有内容;3、搜索:the_content,可以查找到类似代码,将其替换成代码一如果你在tougao-page.php中找不到the_content
,那么你可以查找:get_template_part
,可找到类似代码:,将content-page.php中的所有代码替换这部分代码即可。再用下面的代码替换代码一:
在tougao-page.php开头处中,将第一个
get_var("SELECT`post_date`FROM`$wpdb->posts`ORDERBY`post_date`DESCLIMIT1"); //博客当前最新文章发布时间与要投稿的文章至少间隔120秒。 //可自行修改时间间隔,修改下面代码中的120即可 //相比Cookie来验证两次投稿的时间差,读数据库的方式更加安全 if((date_i18n('U')-strtotime($last_post))点此返回'); } //表单变量初始化 $name=isset($_POST['tougao_authorname'])?trim(htmlspecialchars($_POST['tougao_authorname'],ENT_QUOTES)):''; $email=isset($_POST['免费云主机、域名tougao_authoremail'])?trim(htmlspecialchars($_POST['tougao_authoremail'],ENT_QUOTES)):''; $blog=isset($_POST['tougao_authorblog'])?trim(htmlspecialchars($_POST['tougao_authorblog'],ENT_QUOTES)):''; $title=isset($_POST['tougao_title'])?trim(htmlspecialchars($_POST['tougao_title'],ENT_QUOTES)):''; $category=isset($_POST['cat'])?(int)$_POST['cat']:0; $content=isset($_POST['tougao_content'])?trim(htmlspecialchars($_POST['tougao_content'],ENT_QUOTES)):''; //表单项数据验证 if(empty($name)||mb_strlen($name)>20){ wp_die('昵称必须填写,且长度不得超过20字。点此返回'); } if(empty($email)||strlen($email)>60||!preg_match("/^([a-z0-9+_-]+)(.[a-z0-9+_-]+)*@([a-z0-9-]+.)+[a-z]{2,6}$/ix",$email)){ wp_die('Email必须填写,且长度不得超过60字,必须符合Email格式。点此返回'); } if(empty($title)||mb_strlen($title)>100){ wp_die('标题必须填写,且长度不得超过100字。点此返回'); } if(empty($content)||mb_strlen($content)>3000||mb_strlen($content)点此返回'); } $post_content='昵称:'.$name.'
Email:'.$email.'
blog:'.$blog.'
内容:
'.$content; $tougao=array( 'post_title'=>$title, 'post_content'=>$post_content, 'post_category'=>array($category) ); //将文章插入数据库 $status=wp_insert_post($tougao); if($status!=0){ //投稿成功给博主发送邮件 //somebody#example.com替换博主邮箱 //Mysubject替换为邮件标题,content替换为邮件内容 wp_mail("somebody#example.com","Mysubject","content"); wp_die('投稿成功!感谢投稿!点此返回','投稿成功'); } else{ wp_die('投稿失败!点此返回'); } }
最后以UTF-8编码保存tougao-page.php,否则中文可能会乱码。然后进入WordPress管理后台 – 页面 – 创建页面,标题为投稿(可以自己起名),内容填上投稿说明等,右侧可以选择模板,选择 tougao 即可。此页面即前台注册页面,将该页面的链接放到网站任何位置,供用户点击注册即可。好了,基本的投稿功能已经添加完毕,至于表单样式不好看,表单缺少你想要的项目等问题,你就自己添加css、表单项吧。最后,也欢迎给本站投稿哦,当然本站的投稿方式是开放后台的注册功能,不是以上的表单形式。1、如果你想让投稿的文章立即发布,而不需要审核再编辑,那么请将以上代码中的:改成:2、如果你想给投稿页面增加验证码功能,可以 点此下载 验证码文件,解压后将captcha目录放到当前主题目录下,然后在代码一中,将35行的:改成:将代码二中的:改成:
if(!isset($_SESSION)){ session_start(); session_regenerate_id(TRUE); } if(isset($_POST['tougao_form'])&&$_POST['tougao_form']=='send'){ if(empty($_POST['captcha_code']) ||empty($_SESSION['ludou_lcr_secretword']) ||(trim(strtolower($_POST['captcha_code']))!=$_SESSION['ludou_lcr_secretword']) ){ wp_die('验证码不正确!点此返回'); }
感谢各位的阅读,以上就是“WordPress中如何添加投稿功能”的内容了,经过本文的学习后,相信大家对WordPress中如何添加投稿功能这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是云技术,小编将为大家推送更多相关知识点的文章,欢迎关注!
这篇文章主要介绍了telnet不是内部或外部命令怎么解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇telnet不是内部或外部命令怎么解决文章都会有所收获,下面我们一起来看看吧。操作步骤: 1、右击桌面左下角的“开始”按钮,从其…