-
當(dāng)前位置:首頁 > 創(chuàng)意學(xué)院 > 技術(shù) > 專題列表 > 正文
wordpress報名插件(wordpress網(wǎng)校插件)
大家好!今天讓創(chuàng)意嶺的小編來大家介紹下關(guān)于wordpress報名插件的問題,以下是小編對此問題的歸納整理,讓我們一起來看看吧。
開始之前先推薦一個非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計劃、工作報告、論文、代碼、作文、做題和對話答疑等等
只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準(zhǔn),寫出的就越詳細(xì),有微信小程序端、在線網(wǎng)頁版、PC客戶端
官網(wǎng):https://ai.de1919.com。
創(chuàng)意嶺作為行業(yè)內(nèi)優(yōu)秀的企業(yè),服務(wù)客戶遍布全球各地,如需了解SEO相關(guān)業(yè)務(wù)請撥打電話175-8598-2043,或添加微信:1454722008
本文目錄:
一、如何利用WordPress創(chuàng)建自定義注冊表單插件
WordPress默認(rèn)的注冊表單僅由兩個字段組成—-用戶名和郵箱。
這個僅有的用戶名和郵箱表單字段使得注冊速度非常的簡單。首先,你輸入一個用戶名,然后輸入郵箱,這個郵箱就是用來接收密碼的。接下來,你使用郵箱接收到的密碼登陸站點,并且完成個人資料,把密碼修改成簡單易記得。
僅僅是在站點注冊,而不是讓用戶區(qū)經(jīng)歷這些壓力,那為什么除了用戶名和郵箱之外,不提供一個直接的、包含一些額外重要的表單字段,例如密碼、個人的URL、個人簡介、昵稱和他們的姓名的注冊表單供用戶使用呢?
這對于像Tuts+的多用戶網(wǎng)站是非常有用的。
在這篇文章中,我們將使用下列的表單字段建立一個自定義的表單注冊插件:
username
password
website URL
first name
last name
nickname
biography (or an about section)
這個自定義表單插件可以通過使用短代碼和聯(lián)系模板整合到WordPress中。
利用短代碼模板,你可以在你的站點中創(chuàng)建一個正式的注冊頁面。你也可以再一篇發(fā)表的文章中是用短代碼模板,這樣用戶就可以在閱讀完你的文章之后進行注冊。
如果你想添加一個注冊表單在你網(wǎng)站側(cè)邊欄的某個具體位置,你可以對WordPress主題中僅僅期望放置標(biāo)簽?zāi)0宓奈恢眠M行編輯,來創(chuàng)建需要的注冊表單。
在創(chuàng)建之前,需要注意的是,用戶名、密碼和電子郵件字段是必需的。
當(dāng)我們編寫驗證函數(shù)時,我們將強制執(zhí)行這些規(guī)則。
構(gòu)建插件
正如說的那樣,我們開始對插件編碼。首先,包含插件的頭部:
<?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
*/
接下來,我們創(chuàng)建一個包含注冊表單的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>
';
}
請注意注冊字段是作為變量傳遞給上面的函數(shù)。在函數(shù)中,你會看到下面代碼的示例:
( isset( $_POST['lname'] ) ? $last_name : null )
這個三元操作符是檢查全局變量數(shù)組$_POST是否包含數(shù)據(jù),如果有數(shù)據(jù),就把填充的表單字段值保存以便進入下一個字段。
除非你驗證了表單數(shù)據(jù)并且清空了表單數(shù)據(jù),一個注冊表單才能算完成,否則就不算。因此,我們要創(chuàng)建一個名為 registration_validation的表單驗證函數(shù)。
為了簡化驗證的”痛苦”,我們可以使用WordPress中的 WP_Error 類。跟著我編寫驗證函數(shù):
1、創(chuàng)建函數(shù),并將注冊表單的字段值作為函數(shù)的參數(shù)傳遞進來
function registration_validation( $username, $password, $email, $website, $first_name, $last_name, $nickname, $bio ) {
2、實例化 WP_Error 類,并把實例作為全局變量,以便于我們可以再函數(shù)的作用域之外使用。
global $reg_errors;
$reg_errors = new WP_Error;
3、記?。何覀冋f的用戶名、密碼和電子郵件是必填的,不要忽略了。為了執(zhí)行這個規(guī)則,我們需要檢查它們中任何一個是否為空。如果為空,我們就將錯誤信息追加給 WP_Error 類的實例。
if ( empty( $username ) || empty( $password ) || empty( $email ) ) {
$reg_errors->add('field', 'Required form field is missing');
}
4、我們也可以確保用戶名的字符個數(shù)不小于4
if ( 4 > strlen( $username ) ) {
$reg_errors->add( 'username_length', 'Username too short. At least 4 characters is required' );
}
5、檢查用戶名是否被注冊了
if ( username_exists( $username ) )
$reg_errors->add('user_name', 'Sorry, that username already exists!');
6、利用WordPress的 validate_username 函數(shù)確保用戶名是可用的
if ( ! validate_username( $username ) ) {
$reg_errors->add( 'username_invalid', 'Sorry, the username you entered is not valid' );
}
7、確保用戶輸入的密碼的字符個數(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、檢查電子郵件是否被注冊
if ( !is_email( $email ) ) {
$reg_errors->add( 'email_invalid', 'Email is not valid' );
}
10.、如果用戶填寫了網(wǎng)站字段,需要檢查其是否有效
if ( ! empty( $website ) ) {
if ( ! filter_var( $website, FILTER_VALIDATE_URL ) ) {
$reg_errors->add( 'website', 'Website is not a valid URL' );
}
}
11、最后,我們在WP_Error實例中對錯誤進行循環(huán),并顯示個別的錯誤
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>';
}
}
這樣,驗證函數(shù)就完成了。接下來是 complete_registration()函數(shù),用于處理用戶注冊。用戶的注冊真正完成是通過wp_insert_user函數(shù),
用戶的數(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的實例,并將表單字段作為全局變量以便于可以再全局作用域中使用。
我們需要檢查$reg_errors是否包含任何錯誤,如果沒有錯誤,則將用戶注冊信息插入到WordPress的數(shù)據(jù)庫并用登陸鏈接來顯示注冊完成的信息。
然后,把所有我們之前創(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
);
}
我需要說明一下全局函數(shù) custom_registration_function()中有哪些代碼。
首先,我通過檢查$_POST['submit']是否是空來確定表單是否提交。如果提交了,我就調(diào)用
registration_validation()函數(shù)來驗證用戶提交的表單.
然后,確保表單數(shù)據(jù)的有效性并將有效的數(shù)據(jù)在表單字段域之后用一個變量命名。最后,調(diào)用
complete_registration()函數(shù)保存用戶。我需要調(diào)用registration_form()函數(shù)來顯示用戶注冊表單。
我之前提到過,我打算用短代碼模板來支持注冊插件。下面就是短代碼模的支持代碼:
// 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插件
就像超人奧特曼能通過合體使自己變得更加強大一樣,wordpress能通過安裝插件使自己變得更加強大。wordpress插件可以讓wordpress幾乎可以完成你能夠想象得到的所有功能,統(tǒng)計分析、SEO、緩存、備份、分頁、相關(guān)文章、投標(biāo)……在wordpress官方插件庫中有一萬多款插件可供選擇,而您需要做的就是,在插件庫中搜索您想要的功能的關(guān)鍵詞,找到后安裝,安裝完成后就可以馬上享用這些功能強大的插件了。本文將向您展示。有三種途徑可以實現(xiàn)安裝wordpress插件,分別是本地安裝、在線安裝、復(fù)制插件到插件目錄,其中前兩種都是通過在博客后臺操作完成,第三種就直接在操作系統(tǒng)下進行,下面是三種安裝wordpress插件的詳細(xì)步驟。 1.本地安裝 這種方式適用于您已經(jīng)下載了喜歡的wordpress插件到本機的情況,進入后臺,打開插件管理面板,點擊添加新插件,接著再點擊上傳,選擇您要安裝的wordpress插件(壓縮文件zip格式),點擊現(xiàn)在安裝按鈕,安裝完成后啟用就可以了。-插件管理面板 -上傳附件安裝 -安裝過程 2.在線安裝 通過功能關(guān)鍵字直接搜索wordpress插件庫進行選擇安裝。-插件類型 -插件列表 3.復(fù)制安裝 把您下載的插件壓縮文件解壓后,復(fù)制到wordpress博客安裝目錄下的pluins目錄下,例如:D:\xampp\htdocs\wordpress\wp-content\plugins,然后到插件面板刷新一下,就可以看到該插件,啟用它。-復(fù)制插件安裝 您可以下載的視頻錄像教程。
三、怎么使用wordpress中的插件
手動安裝插件需要知道wordpress插件目錄在網(wǎng)站根目錄的/wp-content/plugins文件夾下,只需要將zip的插件放到這個文件夾并解壓即可。
下載一個叫做duoshuo.zip的插件,使用FTP工具將它上傳到/wp-content/plugins目錄
登錄虛擬主機的面板,使用文件管理器找到該插件,點擊解壓即可完成安裝。然后在后臺>>插件>>已安裝插件,就可以找到了。
四、現(xiàn)在有哪些必備的 wordpress 插件
WordPress擁有各種各樣的插件,這些插件極大的擴展了Wordpress的功能。但面對眾多的插件,我們需要哪些、不需要哪些呢?下面是我安裝插件的一些經(jīng)驗介紹,僅供參考。
1.Akismet
在我的 WordPress 3.01 個人使用記錄 這篇博文中已經(jīng)提及該插件,這里再介紹下。Akismet是Automattic公司的一個專注于剿殺垃圾評論的產(chǎn)品,由于當(dāng)前垃圾評論泛濫,啟用該插件是非常必要的,因此它已被集成到了Wordpress系統(tǒng)中。
該插件不需要你設(shè)置什么,因為它的垃圾過濾是通過Akismet服務(wù)器完成的,你所要做的是啟用該插件,并在 工具– Akismet設(shè)置 里申請一個Key,并提交。
2. Google XML Sitemaps
Sitemaps即網(wǎng)站地圖。Google XML Sitemaps插件是WordPress官方推薦的插件。當(dāng)你發(fā)表或修改博客內(nèi)容后,它將為你的WordPress博客自動創(chuàng)建/更新Google Sitemap格式的XML,它支持所有的WordPress發(fā)表的內(nèi)容,以及自定制。注意其這條提示:如果你 Blog 或服務(wù)器更新了某些東西,你應(yīng)該手動重建sitemap。不過在下面“基本設(shè)置–建立模式”里可以設(shè)置為“在你更改了 Blog 內(nèi)容后重建 sitemap”,這樣就不需要手工重建了,默認(rèn)也是選中的。你還可以設(shè)置更新通知、sitemap內(nèi)容、日志優(yōu)先級、評論等其它內(nèi)容。
Sitemap是所有主要的搜索引擎支持的協(xié)議,創(chuàng)建并提交Sitemap有助于提高搜索引擎收錄率,包括搜索引擎鏈接爬取過程都無法找到的網(wǎng)址。Sitemap 還會向搜索引擎提供有關(guān)您網(wǎng)站的其他信息。Sitemap 可幫助搜索引擎更及時地抓取網(wǎng)站內(nèi)容,但不能保證 Sitemap 中的網(wǎng)址會被 Google 索引。該插件在 設(shè)置–XML Sitemap。
3. All in one seo pack
頗具爭議的一款軟件,一方面有人說其強大的功能,一方面有人說其嚴(yán)重的負(fù)面影響。我覺得在對修改主題有了一定了解后,停用該插件,自己做點SEO比較合適。該插件的最主要功能是設(shè)置標(biāo)題的格式、添加keywords、description標(biāo)簽。注意在發(fā)布文章時,要在其設(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,以及我個人遇到的問題及解決方法,請看我的另一篇文章:關(guān)于停用All in one seo pack后分類頁面description描述出錯的問題
4. WordPress Database Backup
眾多博友認(rèn)為必備的一款插件,可以非常靈活的實現(xiàn)博客數(shù)據(jù)庫的備份。你可以把備份保留在服務(wù)器,也可以下載到本地,還可以直接發(fā)送到你的郵箱。此外,還可以設(shè)置定時備份:按時、天、周備份,并發(fā)送到你的郵箱。
5. Simple tags
Simple Tags是一個Tags管理插件,可以實現(xiàn)自動推薦標(biāo)簽、標(biāo)簽管理(重命名、刪除、合并、添加等)、批量編輯等。
6.WP-Postviews
日志瀏覽統(tǒng)計插件,可以統(tǒng)計每篇日志被瀏覽的次數(shù),這樣就可以實現(xiàn)博客日志流量 Top 10 等功能,非常方便和強大。最新版的 Postviews 還支持緩存,在你的博客使用 WP Super Cache 等緩存插件緩存之后,它照樣還可以進行統(tǒng)計。該插件需要你對主題代碼進行修改。安裝后,在“設(shè)置 > Postviews 配置”。
7.Pagenavi
由于Wordpress自帶的翻頁非常簡單,所以一般都選擇使用一款翻頁插件。Pagenavi是知名度很高的翻頁插件,同類插件還有pagebar??梢宰詣硬迦胍部梢允謩硬迦?,不過有些主題中已經(jīng)自帶或集成了翻頁功能,要注意避免沖突。
8. My Page Order、My Category Order、My Link Order
分別是頁面排序、分類排序、鏈接排序插件,比較簡單。Wordpress沒有自帶這些排序功能,故使用這三個插件還是有必要的。當(dāng)你頁面、分類、鏈接已經(jīng)固定后,你就可以禁用這三個插件了。
9.Subscribe to Comments
Subscribe to Comments 是一個非常受歡迎的插件,它使得評論者可通過 e-mail 來接收文章有新評論的提醒。這個插件包括功能完整的評論訂閱管理器,評論者可以取消對某文章的訂閱,屏蔽所有訂閱的提醒,甚至包括改變接收提醒信息的 email 地址,可以使得你的讀者堅持參加他感興趣的話題來增加你的博客的社區(qū)化!在“設(shè)置-Subscribe to Comments ”里進行設(shè)置,包括改變提示文本等。
以上就是關(guān)于wordpress報名插件相關(guān)問題的回答。希望能幫到你,如有更多相關(guān)問題,您也可以聯(lián)系我們的客服進行咨詢,客服也會為您講解更多精彩的知識和內(nèi)容。
推薦閱讀:
手機版word免費版去哪下載(手機版word免費版去哪下載文件)