茄子在线看片免费人成视频,午夜福利精品a在线观看,国产高清自产拍在线观看,久久综合久久狠狠综合

    <s id="ddbnn"></s>
  • <sub id="ddbnn"><ol id="ddbnn"></ol></sub>

  • <legend id="ddbnn"></legend><s id="ddbnn"></s>

    wordpress 非插件實現(xiàn)前臺投稿功能
    來源:易賢網(wǎng) 閱讀:1188 次 日期:2016-06-14 14:59:52
    溫馨提示:易賢網(wǎng)小編為您整理了“wordpress 非插件實現(xiàn)前臺投稿功能”,方便廣大網(wǎng)友查閱!

    很多網(wǎng)站都想開放讀者的投稿功能,接受讀者的投稿,不僅可以豐富博客的內(nèi)容,還可以增加與讀者之間的溝通,可以說是一舉多得的事情,何樂不為呢?wordpress本身并不提供投稿功能,但是wordpress擁有強大的擴展能力,我們可以自己來添加這個功能。

    實 現(xiàn)用戶投稿,有兩種方法,一種是開放后臺的注冊功能,普通用戶注冊進去默認(rèn)設(shè)置為投稿者,登陸進去即可添加文章(默認(rèn)為草稿);另一種方法是在前臺提供投 稿表單,用戶填寫相應(yīng)的表格即可。前一種方法實現(xiàn)起來比較簡單,基本不需要博主配置太多東西,只是有些博主可能會覺得別扭,不愿讓他人看到自己的博客后 臺;而后一種方法對投稿者來說方便了很多,博主也不用擔(dān)心自己博客的后臺隱私,只是該方法實現(xiàn)起來比較麻煩,需要配置的東西很多。本文也只將介紹后一種方 法,希望對你有所幫助,當(dāng)然也只是復(fù)制粘貼代碼就可以了。

    一、添加投稿表單

     1、首先在當(dāng)前主題的目錄下新建一個php文件,命名為tougao-page.php,然后將page.php中的所有代碼復(fù)制到tougao-page.php中;

     2、刪除tougao-page.php開頭的所有注釋,即 /* 與 */ ,以及它們之間的所有內(nèi)容;

     3、將 <?php the_content(); ?> 改成以下代碼:

    <?php the_content(); ?>

    <!-- 關(guān)于表單樣式,請自行調(diào)整-->

    <form method=post action=<?php echo $_server[request_uri]; ?>>

    <div style=text-align: left; padding-top: 10px;>

    <label for=tougao_authorname>昵稱:*</label>

    <input type=text size=40 value= id=tougao_authorname name=tougao_authorname />

    </div>

    <div style=text-align: left; padding-top: 10px;>

    <label for=tougao_authoremail>e-mail:*</label>

    <input type=text size=40 value= id=tougao_authoremail name=tougao_authoremail />

    </div>

    <div style=text-align: left; padding-top: 10px;>

    <label for=tougao_authorblog>您的博客:</label>

    <input type=text size=40 value= id=tougao_authorblog name=tougao_authorblog />

    </div>

    <div style=text-align: left; padding-top: 10px;>

    <label for=tougao_title>文章標(biāo)題:*</label>

    <input type=text size=40 value= id=tougao_title name=tougao_title />

    </div>

    <div style=text-align: left; padding-top: 10px;>

    <label for=tougaocategorg>分類:*</label>

    <?php wp_dropdown_categories('id=tougaocategorg&show_count=1&hierarchical=1'); ?>

    </div>

    <div style=text-align: left; padding-top: 10px;>

    <label for=tougao_content>文章內(nèi)容:*</label>

    <textarea rows=15 cols=55 id=tougao_content name=tougao_content></textarea>

    </div>

    <br clear=all>

    <div style=text-align: center; padding-top: 10px;>

    <input type=hidden value=send name=tougao_form />

    <input type=submit value=提交 />

    <input type=reset value=重填 />

    </div>

    </form> 

    二、添加表單處理代碼

      在tougao-page.php開頭處中,將第一個 <?php 改成:

    <?php

    /**

    * template name: tougao

    * 作者:露兜

    * 博客:

    * 更新記錄

    * 2010年09月09日 :

    * 首個版本發(fā)布

    * 2011年03月17日 :

    * 修正時間戳函數(shù),使用wp函數(shù)current_time('timestamp')替代time()

    * 2011年04月12日 :

    * 修改了wp_die函數(shù)調(diào)用,使用合適的頁面title

    */

    if( isset($_post['tougao_form']) && $_post['tougao_form'] == 'send')

    {

    global $wpdb;

    $last_post = $wpdb->get_var(select post_date from $wpdb->posts where post_type = 'post' order by post_date desc limit 1);

    // 博客當(dāng)前最新文章發(fā)布時間與要投稿的文章至少間隔120秒。

    // 可自行修改時間間隔,修改下面代碼中的120即可

    // 相比cookie來驗證兩次投稿的時間差,讀數(shù)據(jù)庫的方式更加安全

    if ( current_time('timestamp') - strtotime($last_post) < 120 )

    {

    wp_die('您投稿也太勤快了吧,先歇會兒!');

    }

    // 表單變量初始化

    $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)) : '';

    // 表單項數(shù)據(jù)驗證

    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('標(biāo)題必須填寫,且長度不得超過100字');

    }

    if ( empty($content) || mb_strlen($content) > 3000 || mb_strlen($content) < 100)

    {

    wp_die('內(nèi)容必須填寫,且長度不得超過3000字,不得少于100字');

    }

    $post_content = '昵稱: '.$name.'<br />email: '.$email.'<br />blog: '.$blog.'<br />內(nèi)容:<br />'.$content;

    $tougao = array(

    'post_title' => $title,

    'post_content' => $post_content,

    'post_category' => array($category)

    );

    // 將文章插入數(shù)據(jù)庫

    $status = wp_insert_post( $tougao );

    if ($status != 0) 

    // 投稿成功給博主發(fā)送郵件

    // somebody#example.com替換博主郵箱

    // my subject替換為郵件標(biāo)題,content替換為郵件內(nèi)容

    wp_mail(somebody#example.com,my subject,content);

    wp_die('投稿成功!感謝投稿!', '投稿成功');

    }

    else

    {

    wp_die('投稿失??!');

    }

    }

    最后以utf-8編碼保存tougao-page.php,否則中文可能會亂碼。

    代碼補充說明,如果你想讓投稿的文章立即發(fā)布,而不需要審核再編輯,那么請將以上代碼58行改成:

    'post_content' => $post_content, 'post_status' => 'publish', 

    最后進入wordpress管理后臺 – 頁面 – 創(chuàng)建頁面,標(biāo)題為投稿(可以自己起名),內(nèi)容填上投稿說明等,右側(cè)可以選擇模板,選擇 tougao 即可。

    好了,基本的投稿功能已經(jīng)添加完畢,至于表單樣式不好看,表單缺少你想要的項目等問題,你就自己添加css、表單項吧。

    更多信息請查看CMS教程
    易賢網(wǎng)手機網(wǎng)站地址:wordpress 非插件實現(xiàn)前臺投稿功能
    由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!
    相關(guān)閱讀CMS教程

    2026國考·省考課程試聽報名

    • 報班類型
    • 姓名
    • 手機號
    • 驗證碼
    關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
    工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
    云南網(wǎng)警備案專用圖標(biāo)
    聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
    咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
    云南網(wǎng)警報警專用圖標(biāo)