HOME 首頁(yè)
SERVICE 服務(wù)產(chǎn)品
XINMEITI 新媒體代運(yùn)營(yíng)
CASE 服務(wù)案例
NEWS 熱點(diǎn)資訊
ABOUT 關(guān)于我們
CONTACT 聯(lián)系我們
創(chuàng)意嶺
讓品牌有溫度、有情感
專(zhuān)注品牌策劃15年

    wordpress報(bào)名插件(wordpress網(wǎng)校插件)

    發(fā)布時(shí)間:2023-04-19 11:18:15     稿源: 創(chuàng)意嶺    閱讀: 118        

    大家好!今天讓創(chuàng)意嶺的小編來(lái)大家介紹下關(guān)于wordpress報(bào)名插件的問(wèn)題,以下是小編對(duì)此問(wèn)題的歸納整理,讓我們一起來(lái)看看吧。

    開(kāi)始之前先推薦一個(gè)非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計(jì)劃、工作報(bào)告、論文、代碼、作文、做題和對(duì)話答疑等等

    只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準(zhǔn),寫(xiě)出的就越詳細(xì),有微信小程序端、在線網(wǎng)頁(yè)版、PC客戶(hù)端

    官網(wǎng):https://ai.de1919.com。

    創(chuàng)意嶺作為行業(yè)內(nèi)優(yōu)秀的企業(yè),服務(wù)客戶(hù)遍布全球各地,如需了解SEO相關(guān)業(yè)務(wù)請(qǐng)撥打電話175-8598-2043,或添加微信:1454722008

    本文目錄:

    wordpress報(bào)名插件(wordpress網(wǎng)校插件)

    一、如何利用WordPress創(chuàng)建自定義注冊(cè)表單插件

    WordPress默認(rèn)的注冊(cè)表單僅由兩個(gè)字段組成—-用戶(hù)名和郵箱。

    這個(gè)僅有的用戶(hù)名和郵箱表單字段使得注冊(cè)速度非常的簡(jiǎn)單。首先,你輸入一個(gè)用戶(hù)名,然后輸入郵箱,這個(gè)郵箱就是用來(lái)接收密碼的。接下來(lái),你使用郵箱接收到的密碼登陸站點(diǎn),并且完成個(gè)人資料,把密碼修改成簡(jiǎn)單易記得。

    僅僅是在站點(diǎn)注冊(cè),而不是讓用戶(hù)區(qū)經(jīng)歷這些壓力,那為什么除了用戶(hù)名和郵箱之外,不提供一個(gè)直接的、包含一些額外重要的表單字段,例如密碼、個(gè)人的URL、個(gè)人簡(jiǎn)介、昵稱(chēng)和他們的姓名的注冊(cè)表單供用戶(hù)使用呢?

    這對(duì)于像Tuts+的多用戶(hù)網(wǎng)站是非常有用的。

    在這篇文章中,我們將使用下列的表單字段建立一個(gè)自定義的表單注冊(cè)插件:

    username

    password

    email

    website URL

    first name

    last name

    nickname

    biography (or an about section)

    這個(gè)自定義表單插件可以通過(guò)使用短代碼和聯(lián)系模板整合到WordPress中。

    利用短代碼模板,你可以在你的站點(diǎn)中創(chuàng)建一個(gè)正式的注冊(cè)頁(yè)面。你也可以再一篇發(fā)表的文章中是用短代碼模板,這樣用戶(hù)就可以在閱讀完你的文章之后進(jìn)行注冊(cè)。

    如果你想添加一個(gè)注冊(cè)表單在你網(wǎng)站側(cè)邊欄的某個(gè)具體位置,你可以對(duì)WordPress主題中僅僅期望放置標(biāo)簽?zāi)0宓奈恢眠M(jìn)行編輯,來(lái)創(chuàng)建需要的注冊(cè)表單。

    在創(chuàng)建之前,需要注意的是,用戶(hù)名、密碼和電子郵件字段是必需的。

    當(dāng)我們編寫(xiě)驗(yàn)證函數(shù)時(shí),我們將強(qiáng)制執(zhí)行這些規(guī)則。

    構(gòu)建插件

    正如說(shuō)的那樣,我們開(kāi)始對(duì)插件編碼。首先,包含插件的頭部:

    <?php

    /*

    Plugin Name: Custom Registration

    Plugin URI: http://code.tutsplus.com

    Description: Updates user rating based on number of posts.

    Version: 1.0

    Author: Agbonghama Collins

    Author URI: http://tech4sky.com

    */

    接下來(lái),我們創(chuàng)建一個(gè)包含注冊(cè)表單的HTML代碼的PHP函數(shù):

    function registration_form( $username, $password, $email, $website, $first_name, $last_name, $nickname, $bio ) {

    echo '

    <style>

    div {

    margin-bottom:2px;

    }

    input{

    margin-bottom:4px;

    }

    </style>

    ';

    echo '

    <form action="' . $_SERVER['REQUEST_URI'] . '" method="post">

    <div>

    <label for="username">Username <strong>*</strong></label>

    <input type="text" name="username" value="' . ( isset( $_POST['username'] ) ? $username : null ) . '">

    </div>

    <div>

    <label for="password">Password <strong>*</strong></label>

    <input type="password" name="password" value="' . ( isset( $_POST['password'] ) ? $password : null ) . '">

    </div>

    <div>

    <label for="email">Email <strong>*</strong></label>

    <input type="text" name="email" value="' . ( isset( $_POST['email']) ? $email : null ) . '">

    </div>

    <div>

    <label for="website">Website</label>

    <input type="text" name="website" value="' . ( isset( $_POST['website']) ? $website : null ) . '">

    </div>

    <div>

    <label for="firstname">First Name</label>

    <input type="text" name="fname" value="' . ( isset( $_POST['fname']) ? $first_name : null ) . '">

    </div>

    <div>

    <label for="website">Last Name</label>

    <input type="text" name="lname" value="' . ( isset( $_POST['lname']) ? $last_name : null ) . '">

    </div>

    <div>

    <label for="nickname">Nickname</label>

    <input type="text" name="nickname" value="' . ( isset( $_POST['nickname']) ? $nickname : null ) . '">

    </div>

    <div>

    <label for="bio">About / Bio</label>

    <textarea name="bio">' . ( isset( $_POST['bio']) ? $bio : null ) . '</textarea>

    </div>

    <input type="submit" name="submit" value="Register"/>

    </form>

    ';

    }

    請(qǐng)注意注冊(cè)字段是作為變量傳遞給上面的函數(shù)。在函數(shù)中,你會(huì)看到下面代碼的示例:

    ( isset( $_POST['lname'] ) ? $last_name : null )

    這個(gè)三元操作符是檢查全局變量數(shù)組$_POST是否包含數(shù)據(jù),如果有數(shù)據(jù),就把填充的表單字段值保存以便進(jìn)入下一個(gè)字段。

    除非你驗(yàn)證了表單數(shù)據(jù)并且清空了表單數(shù)據(jù),一個(gè)注冊(cè)表單才能算完成,否則就不算。因此,我們要?jiǎng)?chuàng)建一個(gè)名為 registration_validation的表單驗(yàn)證函數(shù)。

    為了簡(jiǎn)化驗(yàn)證的”痛苦”,我們可以使用WordPress中的 WP_Error 類(lèi)。跟著我編寫(xiě)驗(yàn)證函數(shù):

    1、創(chuàng)建函數(shù),并將注冊(cè)表單的字段值作為函數(shù)的參數(shù)傳遞進(jìn)來(lái)

    function registration_validation( $username, $password, $email, $website, $first_name, $last_name, $nickname, $bio ) {

    2、實(shí)例化 WP_Error 類(lèi),并把實(shí)例作為全局變量,以便于我們可以再函數(shù)的作用域之外使用。

    global $reg_errors;

    $reg_errors = new WP_Error;

    3、記?。何覀冋f(shuō)的用戶(hù)名、密碼和電子郵件是必填的,不要忽略了。為了執(zhí)行這個(gè)規(guī)則,我們需要檢查它們中任何一個(gè)是否為空。如果為空,我們就將錯(cuò)誤信息追加給 WP_Error 類(lèi)的實(shí)例。

    if ( empty( $username ) || empty( $password ) || empty( $email ) ) {

    $reg_errors->add('field', 'Required form field is missing');

    }

    4、我們也可以確保用戶(hù)名的字符個(gè)數(shù)不小于4

    if ( 4 > strlen( $username ) ) {

    $reg_errors->add( 'username_length', 'Username too short. At least 4 characters is required' );

    }

    5、檢查用戶(hù)名是否被注冊(cè)了

    if ( username_exists( $username ) )

    $reg_errors->add('user_name', 'Sorry, that username already exists!');

    6、利用WordPress的 validate_username 函數(shù)確保用戶(hù)名是可用的

    if ( ! validate_username( $username ) ) {

    $reg_errors->add( 'username_invalid', 'Sorry, the username you entered is not valid' );

    }

    7、確保用戶(hù)輸入的密碼的字符個(gè)數(shù)不小于5

    if ( 5 > strlen( $password ) ) {

    $reg_errors->add( 'password', 'Password length must be greater than 5' );

    }

    8、檢查電子郵件是否有效

    if ( !is_email( $email ) ) {

    $reg_errors->add( 'email_invalid', 'Email is not valid' );

    }

    9、檢查電子郵件是否被注冊(cè)

    if ( !is_email( $email ) ) {

    $reg_errors->add( 'email_invalid', 'Email is not valid' );

    }

    10.、如果用戶(hù)填寫(xiě)了網(wǎng)站字段,需要檢查其是否有效

    if ( ! empty( $website ) ) {

    if ( ! filter_var( $website, FILTER_VALIDATE_URL ) ) {

    $reg_errors->add( 'website', 'Website is not a valid URL' );

    }

    }

    11、最后,我們?cè)赪P_Error實(shí)例中對(duì)錯(cuò)誤進(jìn)行循環(huán),并顯示個(gè)別的錯(cuò)誤

    if ( is_wp_error( $reg_errors ) ) {

    foreach ( $reg_errors->get_error_messages() as $error ) {

    echo '<div>';

    echo '<strong>ERROR</strong>:';

    echo $error . '<br/>';

    echo '</div>';

    }

    }

    這樣,驗(yàn)證函數(shù)就完成了。接下來(lái)是 complete_registration()函數(shù),用于處理用戶(hù)注冊(cè)。用戶(hù)的注冊(cè)真正完成是通過(guò)wp_insert_user函數(shù),

    用戶(hù)的數(shù)據(jù)作為數(shù)據(jù)保存后可以作為此函數(shù)的參數(shù)。

    function complete_registration() {

    global $reg_errors, $username, $password, $email, $website, $first_name, $last_name, $nickname, $bio;

    if ( 1 > count( $reg_errors->get_error_messages() ) ) {

    $userdata = array(

    'user_login' => $username,

    'user_email' => $email,

    'user_pass' => $password,

    'user_url' => $website,

    'first_name' => $first_name,

    'last_name' => $last_name,

    'nickname' => $nickname,

    'description' => $bio,

    );

    $user = wp_insert_user( $userdata );

    echo 'Registration complete. Goto <a href="' . get_site_url() . '/wp-login.php">login page</a>.';

    }

    }

    在上面的函數(shù)中,我們將$reg_errors作為WP_Error的實(shí)例,并將表單字段作為全局變量以便于可以再全局作用域中使用。

    我們需要檢查$reg_errors是否包含任何錯(cuò)誤,如果沒(méi)有錯(cuò)誤,則將用戶(hù)注冊(cè)信息插入到WordPress的數(shù)據(jù)庫(kù)并用登陸鏈接來(lái)顯示注冊(cè)完成的信息。

    然后,把所有我們之前創(chuàng)建的函數(shù)全部放在全局函數(shù) custom_registration_function()之中

    function custom_registration_function() {

    if ( isset($_POST['submit'] ) ) {

    registration_validation(

    $_POST['username'],

    $_POST['password'],

    $_POST['email'],

    $_POST['website'],

    $_POST['fname'],

    $_POST['lname'],

    $_POST['nickname'],

    $_POST['bio']

    );

    // sanitize user form input

    global $username, $password, $email, $website, $first_name, $last_name, $nickname, $bio;

    $username = sanitize_user( $_POST['username'] );

    $password = esc_attr( $_POST['password'] );

    $email = sanitize_email( $_POST['email'] );

    $website = esc_url( $_POST['website'] );

    $first_name = sanitize_text_field( $_POST['fname'] );

    $last_name = sanitize_text_field( $_POST['lname'] );

    $nickname = sanitize_text_field( $_POST['nickname'] );

    $bio = esc_textarea( $_POST['bio'] );

    // call @function complete_registration to create the user

    // only when no WP_error is found

    complete_registration(

    $username,

    $password,

    $email,

    $website,

    $first_name,

    $last_name,

    $nickname,

    $bio

    );

    }

    registration_form(

    $username,

    $password,

    $email,

    $website,

    $first_name,

    $last_name,

    $nickname,

    $bio

    );

    }

    我需要說(shuō)明一下全局函數(shù) custom_registration_function()中有哪些代碼。

    首先,我通過(guò)檢查$_POST['submit']是否是空來(lái)確定表單是否提交。如果提交了,我就調(diào)用

    registration_validation()函數(shù)來(lái)驗(yàn)證用戶(hù)提交的表單.

    然后,確保表單數(shù)據(jù)的有效性并將有效的數(shù)據(jù)在表單字段域之后用一個(gè)變量命名。最后,調(diào)用

    complete_registration()函數(shù)保存用戶(hù)。我需要調(diào)用registration_form()函數(shù)來(lái)顯示用戶(hù)注冊(cè)表單。

    我之前提到過(guò),我打算用短代碼模板來(lái)支持注冊(cè)插件。下面就是短代碼模的支持代碼:

    // Register a new shortcode: [cr_custom_registration]

    add_shortcode( 'cr_custom_registration', 'custom_registration_shortcode' );

    // The callback function that will replace [book]

    function custom_registration_shortcode() {

    ob_start();

    custom_registration_function();

    return ob_get_clean();

    }

    到這里為止,我們已經(jīng)完成了插件

    二、wordpress插件

    就像超人奧特曼能通過(guò)合體使自己變得更加強(qiáng)大一樣,wordpress能通過(guò)安裝插件使自己變得更加強(qiáng)大。wordpress插件可以讓wordpress幾乎可以完成你能夠想象得到的所有功能,統(tǒng)計(jì)分析、SEO、緩存、備份、分頁(yè)、相關(guān)文章、投標(biāo)……在wordpress官方插件庫(kù)中有一萬(wàn)多款插件可供選擇,而您需要做的就是,在插件庫(kù)中搜索您想要的功能的關(guān)鍵詞,找到后安裝,安裝完成后就可以馬上享用這些功能強(qiáng)大的插件了。本文將向您展示。有三種途徑可以實(shí)現(xiàn)安裝wordpress插件,分別是本地安裝、在線安裝、復(fù)制插件到插件目錄,其中前兩種都是通過(guò)在博客后臺(tái)操作完成,第三種就直接在操作系統(tǒng)下進(jìn)行,下面是三種安裝wordpress插件的詳細(xì)步驟。 1.本地安裝 這種方式適用于您已經(jīng)下載了喜歡的wordpress插件到本機(jī)的情況,進(jìn)入后臺(tái),打開(kāi)插件管理面板,點(diǎn)擊添加新插件,接著再點(diǎn)擊上傳,選擇您要安裝的wordpress插件(壓縮文件zip格式),點(diǎn)擊現(xiàn)在安裝按鈕,安裝完成后啟用就可以了。-插件管理面板 -上傳附件安裝 -安裝過(guò)程 2.在線安裝 通過(guò)功能關(guān)鍵字直接搜索wordpress插件庫(kù)進(jìn)行選擇安裝。-插件類(lèi)型 -插件列表 3.復(fù)制安裝 把您下載的插件壓縮文件解壓后,復(fù)制到wordpress博客安裝目錄下的pluins目錄下,例如:D:\xampp\htdocs\wordpress\wp-content\plugins,然后到插件面板刷新一下,就可以看到該插件,啟用它。-復(fù)制插件安裝 您可以下載的視頻錄像教程。

    三、怎么使用wordpress中的插件

    手動(dòng)安裝插件需要知道wordpress插件目錄在網(wǎng)站根目錄的/wp-content/plugins文件夾下,只需要將zip的插件放到這個(gè)文件夾并解壓即可。

    下載一個(gè)叫做duoshuo.zip的插件,使用FTP工具將它上傳到/wp-content/plugins目錄

    登錄虛擬主機(jī)的面板,使用文件管理器找到該插件,點(diǎn)擊解壓即可完成安裝。然后在后臺(tái)>>插件>>已安裝插件,就可以找到了。

    四、現(xiàn)在有哪些必備的 wordpress 插件

    WordPress擁有各種各樣的插件,這些插件極大的擴(kuò)展了Wordpress的功能。但面對(duì)眾多的插件,我們需要哪些、不需要哪些呢?下面是我安裝插件的一些經(jīng)驗(yàn)介紹,僅供參考。

    1.Akismet

    在我的 WordPress 3.01 個(gè)人使用記錄 這篇博文中已經(jīng)提及該插件,這里再介紹下。Akismet是Automattic公司的一個(gè)專(zhuān)注于剿殺垃圾評(píng)論的產(chǎn)品,由于當(dāng)前垃圾評(píng)論泛濫,啟用該插件是非常必要的,因此它已被集成到了Wordpress系統(tǒng)中。

    該插件不需要你設(shè)置什么,因?yàn)樗睦^(guò)濾是通過(guò)Akismet服務(wù)器完成的,你所要做的是啟用該插件,并在 工具– Akismet設(shè)置 里申請(qǐng)一個(gè)Key,并提交。

    2. Google XML Sitemaps

    Sitemaps即網(wǎng)站地圖。Google XML Sitemaps插件是WordPress官方推薦的插件。當(dāng)你發(fā)表或修改博客內(nèi)容后,它將為你的WordPress博客自動(dòng)創(chuàng)建/更新Google Sitemap格式的XML,它支持所有的WordPress發(fā)表的內(nèi)容,以及自定制。注意其這條提示:如果你 Blog 或服務(wù)器更新了某些東西,你應(yīng)該手動(dòng)重建sitemap。不過(guò)在下面“基本設(shè)置–建立模式”里可以設(shè)置為“在你更改了 Blog 內(nèi)容后重建 sitemap”,這樣就不需要手工重建了,默認(rèn)也是選中的。你還可以設(shè)置更新通知、sitemap內(nèi)容、日志優(yōu)先級(jí)、評(píng)論等其它內(nèi)容。

    Sitemap是所有主要的搜索引擎支持的協(xié)議,創(chuàng)建并提交Sitemap有助于提高搜索引擎收錄率,包括搜索引擎鏈接爬取過(guò)程都無(wú)法找到的網(wǎng)址。Sitemap 還會(huì)向搜索引擎提供有關(guān)您網(wǎng)站的其他信息。Sitemap 可幫助搜索引擎更及時(shí)地抓取網(wǎng)站內(nèi)容,但不能保證 Sitemap 中的網(wǎng)址會(huì)被 Google 索引。該插件在 設(shè)置–XML Sitemap。

    3. All in one seo pack

    頗具爭(zhēng)議的一款軟件,一方面有人說(shuō)其強(qiáng)大的功能,一方面有人說(shuō)其嚴(yán)重的負(fù)面影響。我覺(jué)得在對(duì)修改主題有了一定了解后,停用該插件,自己做點(diǎn)SEO比較合適。該插件的最主要功能是設(shè)置標(biāo)題的格式、添加keywords、description標(biāo)簽。注意在發(fā)布文章時(shí),要在其設(shè)置區(qū)域設(shè)置文章標(biāo)題、描述、關(guān)鍵詞等內(nèi)容。也有WP友推薦Platinum SEO Pack這款替代型插件。SEO Title Tag 也是一款seo插件,可以讓每篇文章都含有相應(yīng)的關(guān)鍵詞和描述。

    關(guān)于為什么要停用All in one seo pack,停用后怎么自己做SEO,以及我個(gè)人遇到的問(wèn)題及解決方法,請(qǐng)看我的另一篇文章:關(guān)于停用All in one seo pack后分類(lèi)頁(yè)面description描述出錯(cuò)的問(wèn)題

    4. WordPress Database Backup

    眾多博友認(rèn)為必備的一款插件,可以非常靈活的實(shí)現(xiàn)博客數(shù)據(jù)庫(kù)的備份。你可以把備份保留在服務(wù)器,也可以下載到本地,還可以直接發(fā)送到你的郵箱。此外,還可以設(shè)置定時(shí)備份:按時(shí)、天、周備份,并發(fā)送到你的郵箱。

    5. Simple tags

    Simple Tags是一個(gè)Tags管理插件,可以實(shí)現(xiàn)自動(dòng)推薦標(biāo)簽、標(biāo)簽管理(重命名、刪除、合并、添加等)、批量編輯等。

    6.WP-Postviews

    日志瀏覽統(tǒng)計(jì)插件,可以統(tǒng)計(jì)每篇日志被瀏覽的次數(shù),這樣就可以實(shí)現(xiàn)博客日志流量 Top 10 等功能,非常方便和強(qiáng)大。最新版的 Postviews 還支持緩存,在你的博客使用 WP Super Cache 等緩存插件緩存之后,它照樣還可以進(jìn)行統(tǒng)計(jì)。該插件需要你對(duì)主題代碼進(jìn)行修改。安裝后,在“設(shè)置 > Postviews 配置”。

    7.Pagenavi

    由于Wordpress自帶的翻頁(yè)非常簡(jiǎn)單,所以一般都選擇使用一款翻頁(yè)插件。Pagenavi是知名度很高的翻頁(yè)插件,同類(lèi)插件還有pagebar??梢宰詣?dòng)插入也可以手動(dòng)插入,不過(guò)有些主題中已經(jīng)自帶或集成了翻頁(yè)功能,要注意避免沖突。

    8. My Page Order、My Category Order、My Link Order

    分別是頁(yè)面排序、分類(lèi)排序、鏈接排序插件,比較簡(jiǎn)單。Wordpress沒(méi)有自帶這些排序功能,故使用這三個(gè)插件還是有必要的。當(dāng)你頁(yè)面、分類(lèi)、鏈接已經(jīng)固定后,你就可以禁用這三個(gè)插件了。

    9.Subscribe to Comments

    Subscribe to Comments 是一個(gè)非常受歡迎的插件,它使得評(píng)論者可通過(guò) e-mail 來(lái)接收文章有新評(píng)論的提醒。這個(gè)插件包括功能完整的評(píng)論訂閱管理器,評(píng)論者可以取消對(duì)某文章的訂閱,屏蔽所有訂閱的提醒,甚至包括改變接收提醒信息的 email 地址,可以使得你的讀者堅(jiān)持參加他感興趣的話題來(lái)增加你的博客的社區(qū)化!在“設(shè)置-Subscribe to Comments ”里進(jìn)行設(shè)置,包括改變提示文本等。

    以上就是關(guān)于wordpress報(bào)名插件相關(guān)問(wèn)題的回答。希望能幫到你,如有更多相關(guān)問(wèn)題,您也可以聯(lián)系我們的客服進(jìn)行咨詢(xún),客服也會(huì)為您講解更多精彩的知識(shí)和內(nèi)容。


    推薦閱讀:

    個(gè)人簡(jiǎn)歷word模板(個(gè)人簡(jiǎn)歷word模板表格)

    手機(jī)上編輯word文檔(手機(jī)上怎么編輯word文檔)

    手機(jī)版word免費(fèi)版去哪下載(手機(jī)版word免費(fèi)版去哪下載文件)

    大同景點(diǎn)排行榜(山西大同景點(diǎn)排行榜)

    星黛露的老公(星黛露是男的嗎)