WordPress 不消插件实如今线投稿教程

[复制链接]
查看310 | 回复0 | 2038-1-19 11:14:07 | 显示全部楼层 |阅读模式
  一样平常利用 WordPress 的朋侪实如今线投稿,少数会借助插件来完成,常常用到的插件有 submit post 或 ucan  post。关于那些不喜好利用插件的人来说,可以试试以下的办法。
  WordPress 不消插件实如今线投稿功用
  
聽聽聽1.起首新建一个投稿页面模板,把主题中的  page.php 文件另存为 tougao.php,并在第一行的
文章分类(*必填)

聽聽聽聽聽聽聽
聽聽聽聽聽聽聽
聽聽聽聽聽聽聽  
聽聽聽聽聽聽聽  
聽聽聽聽聽聽聽
聽聽聽聽聽聽聽  

</blockquote>  3.在 tougao.php 文件中添加如下函数,添加到第一步中的解释代码背面就可以。
  if( isset($_POST['tougao_form']) && $_POST['tougao_form'] ==  'send'){
  if ( isset($_COOKIE["tougao"]) && ( time() - $_COOKIE["tougao"] )  < 120 ){
  wp_die('您投稿也太勤快了吧,先歇会儿!');
  }
  //表单变量初始化
  $name = isset( $_POST['tougao_authorname'] ) ? $_POST['tougao_authorname']  : '';
  $email = isset( $_POST['tougao_authoremail'] ) ?  $_POST['tougao_authoremail'] : '';
  $blog = isset( $_POST['tougao_authorblog'] ) ? $_POST['tougao_authorblog']  : '';
  $title = isset( $_POST['tougao_title'] ) ? $_POST['tougao_title'] : '';
  $tags = isset( $_POST['tougao_tags'] ) ? $_POST['tougao_tags'] : '';
  $category = isset( $_POST['cat'] ) ? (int)$_POST['cat'] : 0;
  $content = isset( $_POST['tougao_content'] ) ? $_POST['tougao_content'] :  '';
  //表单项数据验证
  if ( empty($name) || 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('邮箱必需填写,且不得凌驾60个长度,必需契合 Email 格式');
  }
  if ( empty($title) || strlen($title) > 100 ){
  wp_die('文章标题必需填写,且不得凌驾100个长度');
  }
  if ( empty($content) || strlen($content) < 100){
  wp_die('内容必需填写,且不得少于100个长度');
  }
  $tougao = array(
  'post_title' => $title, //标题
  'post_content' => $content, //内容
  'post_status' => 'pending', //待审
  'tags_input' => $tags, //标签
  'post_category' => array($category) //分类
  );
  //将文章拔出数据库
  $status = wp_insert_post( $tougao );
  if ($status != 0){
  /*
  //将自界说域写入最新待审文章
  global $wpdb;
  $myposts = $wpdb->get_results("
  SELECT ID
  FROM $wpdb->posts
  WHERE post_status = 'pending'
  AND post_type = 'post'
  ORDER BY post_date DESC
  ");
  add_post_meta($myposts[0]->ID, 'cbs_postauthor', $name);  //拔出投稿人昵称的自界说域
  if ( !empty($blog)) add_post_meta($myposts[0]->ID, 'cbs_posturl',  $blog); //拔出投稿人网址的自界说域
  */
  setcookie("tougao", time(), time()+180);
  wp_die('投稿乐成!','投稿乐成!');
  } else {
  wp_die('投稿失败!','投稿失败!');
  }
  到这一步就曾经完成了 WordPress 不消插件实如今线投稿功用。
  注:以下代码和办法来自万戈同砚,原文请点击这里。
  许多网站上都设有在线投稿功用,在线投稿可以让其他读者的文章有时机公布在本身网站或博客上。如许不但可以加速文章的更新频率,并且还会空虚本身的网站内容,可以说是一种疾速扩大网站文章数目的一种好办法,以上就是园子与各人分享的是  wordpress 中不消插件实如今线投稿功用的办法。
楼主热帖