تبلیغات شما در این مکان, ماهانه 10.000 تومان
YourSite.Com تبلیغات شما
تبلیغات شما در این مکان, ماهانه 10.000 تومان
YourSite.Com سرورها
سرورها، فروش فضای وب و دامنه و اعطای نمایندگی فروش
تبلیغات شما
تبلیغات شما در این مکان, ماهانه 10.000 تومان
YourSite.Com تبلیغات شما
تبلیغات شما در این مکان, ماهانه 10.000 تومان
YourSite.Com تبلیغات شما
تبلیغات شما در این مکان, ماهانه 10.000 تومان
YourSite.Com کمپ خبری
اخبار ورزشی ، حوادث ، جهان سیاست ، دنیای فرهنگ و هنر
News.MyCamp.Ir طراحی وب سایت
طراحی گرافیک سایت
AzinWeb.Com تبلیغات شما
تبلیغات شما در این مکان, ماهانه 10.000 تومان
YourSite.Com فال حافظ
نیت کنید و با اشاره فال حافظ بگیرید . قدرت گرفته از تک طرح
Fal.Taktarh.Com تبلیغات شما
تبلیغات شما در این مکان, ماهانه 10.000 تومان
YourSite.Com تبلیغات شما
تبلیغات شما در این مکان با نماش گوگل پلاس شما ماهانه 20.000 تومان
YourSite.Com تبلیغات شما
تبلیغات شما در این مکان, ماهانه 10.000 تومان
YourSite.Com تبلیغات شما
تبلیغات شما در این مکان, ماهانه 10.000 تومان
YourSite.Com تبلیغات شما
تبلیغات شما در این مکان با نماش گوگل پلاس شما ماهانه 20.000 تومان
YourSite.Com
با استفاده از این باکس فال حافظ بگیرید , ابتدا نیت کنید
شاید بهتر باشد برای شادی روح حافظ، صلوات یا فاتحه ای نثار نماییم
براي نمايش فال بر روي اعلان رو به رو کليک کنيد
ساخت صفحه ثبت نام در وردپرس
- موضوع : آجاکس و جی کوئری, آموزش, آموزش وردپرس, اسکریپت ها, هک وردپرس, وبمستر, وردپرس
- ۲۹ نظر
- 4,609 بازدید
- تاریخ ارسال : مرداد ۱۹م, ۱۳۹۰
امروز یک آموزش کوتاه و کاربردی آماده کردم که با استفاده از این آموزش میتونید در وردپرس یک صفحه عضویت جدا مثل سیستم های جوملا و دیتالایف ایجاد کنید و کمی رابط کاربری سیستم وردپرس رو قوی تر کنید . ادامه مطلب رو مطالعه کنید
مرحله اول : ایجاد فایل signup.php
در مرحله اول باید فایلی با نام signup.php در پوشه قالب سایت ایجاد کنید
مرحله دوم : نامگذاری
<?php
/*
Template Name: Signup
*/
?>
مرحله سوم : بررسی لاگین بودن کاربر از قبل
ما باید قبل از نمایش دادن فرم ثبت نام ، لاگین بودن کاربر در سایت رو بررسی کنیم تا اگر کاربری در سیستم از قبل وارد شده باشه و صفحه ثبت نام رو باز کنه به صفحه اصلی سایت منتقل بشه . همینطور ما باید فایل registration.php رو از فولدر wp-includes فراخوانی کنیم تا بتونیم کاربر جدیدی رو داخل وردپرس ایجاد کنیم
<?php
require_once(ABSPATH . WPINC . '/registration.php');
global $wpdb, $user_ID;
if (!$user_ID) {
//تمامی کدها در این قسمت قرار داده خواهند شد
}
else {
echo "<script type='text/javascript'>window.location='". get_bloginfo('url') ."'</script>";
}
مرحله چهارم : ساخت فرم و استفاده از jQuery Ajax
قبل از نمایش دادن فرم باید فعال بودن امکان ثبت نام توسط مدیران رو با استفاده از تابع get_option(‘users_can_register’) بررسی کنیم . اگر کتابخانه جی کوئری در قالب شما از قبل فراخوانی شده میتونید کد مربوط بهش رو حذف کنید
<?php
if(get_option('users_can_register')) { //بررسی فعال بودن امکان عضویت
?>
<h1><?php the_title(); ?></h1>
<div id="result"></div> <!-- نتایج بررسی معتبر بودن نام کاربری و آدرس ایمیل -->
<form id="wp_signup_form" action="" method="post">
<label>نام کاربری</label><br />
<input type="text" name="username" class="text" value="" /><br />
<label>آدرس ایمیل</label><br />
<input type="text" name="email" class="text" value="" /> <br />
<br /><br />
<input type="submit" id="submitbtn" name="submit" value="عضویت" />
</form>
<script src="http://code.jquery.com/jquery-1.4.4.js"></script> <!-- اگر جی کوئری قبلا در قالب شما لود شده است این کد را حذف کنید -->
<script type="text/javascript">
$("#submitbtn").click(function() {
$('#result').html('<img src="<?php bloginfo('template_url'); ?>/images/loader.gif" class="loader" />').fadeIn();
var input_data = $('#wp_signup_form').serialize();
$.ajax({
type: "POST",
url: "<?php echo "http://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; ?>",
data: input_data,
success: function(msg){
$('.loader').remove();
$('<div>').html(msg).appendTo('div#result').hide().fadeIn('slow');
}
});
return false;
});
</script>
<?php
}
else echo "امکان ثبت نام کابران جدید توسط مدیریت سایت غیرفعال شده است";
?>
مرحله پنجم : اعتبارسنجی input ها و ثبت نام کاربر
کد زیر رو داخل if (!$user_ID) { } اضافه کنید و فرم ثبت نام رو به قسمت مشخص شده در کد زیر منتقل کنید
if($_POST){
$username = $wpdb->escape($_REQUEST['username']);
if(empty($username)) {
echo "نام کاربری نمیتواند خالی باشد";
exit();
}
$email = $wpdb->escape($_REQUEST['email']);
if(!preg_match("/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/", $email)) {
echo "لطفا یک ایمیل معتبر وارد کنید";
exit();
}
$random_password = wp_generate_password( 12, false );
$status = wp_create_user( $username, $random_password, $email );
if ( is_wp_error($status) )
echo "نام کاربری یا آدرس ایمیل قبلاً انتخاب شده است";
else {
$from = get_option('admin_email');
$headers = 'از : '.$from . "\r\n";
$subject = "ثبت نام انجام شد";
$msg = "ثبت نام انجام شد\nاطلاعات ورود به سایت\nنام کابری : $username\nکلمه عبور : $random_password";
wp_mail( $email, $subject, $msg, $headers );
echo "اطلاعات ورود به سایت به ایمیل شما ارسال شد";
}
exit();
}
else
{
//فرم رو به این قسمت منتقل کنید
}
در کد بالا ما input ها رو اعتبارسنجی میکنیم و بعد با استفاده از تابع wp_generate_password() یک کلمه عبور تصادفی برای کاربر ایجاد میکنیم . با تابع wp_create_user یک کاربر جدید ایجاد میکنیم (اگر نام کاربری انتخابی از قبل در سیستم وجود نداشته باشد) و در آخر یک ایمیل حاوی اطلاعات ورود به سیستم برای کاربر ارسال میکنیم
مرحله آخر : ساخت صفحه ی ثبت نام
در این مرحله باید یک برگه با عنوان انتخابی خودتون ایجاد کنید و از سمت چپ قالب singup رو برای این برگه انتخاب کنید . قبل از مشاهده برگه حتما logout کنید
سورس کامل
<?php
/*
Template Name: Signup
*/
?>
<?php
require_once(ABSPATH . WPINC . '/registration.php');
global $wpdb, $user_ID;
//بررسی لاگین بودن کاربر
if (!$user_ID) {
if($_POST){
$username = $wpdb->escape($_REQUEST['username']);
if(empty($username)) {
echo "نام کاربری نمیتواند خالی باشد";
exit();
}
$email = $wpdb->escape($_REQUEST['email']);
if(!preg_match("/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/", $email)) {
echo "لطفا یک ایمیل معتبر وارد کنید";
exit();
}
$random_password = wp_generate_password( 12, false );
$status = wp_create_user( $username, $random_password, $email );
if ( is_wp_error($status) )
echo "نام کاربری یا آدرس ایمیل قبلاً انتخاب شده است";
else {
$from = get_option('admin_email');
$headers = 'از : '.$from . "\r\n";
$subject = "ثبت نام انجام شد";
$msg = "ثبت نام انجام شد\nاطلاعات ورود به سایت\nنام کابری : $username\nکلمه عبور : $random_password";
wp_mail( $email, $subject, $msg, $headers );
echo "اطلاعات ورود به سایت به ایمیل شما ارسال شد";
}
exit();
} else {
get_header();
?>
<script src="http://code.jquery.com/jquery-1.4.4.js"></script> <!-- اگر جی کوئری قبلا در قالب شما لود شده است این کد را حذف کنید -->
<div id="container">
<div id="content">
<?php
if(get_option('users_can_register')) { //بررسی فعال بودن امکان عضویت
?>
<div id="result"></div> <!-- نتایج بررسی معتبر بودن نام کاربری و آدرس ایمیل -->
<form id="wp_signup_form" action="" method="post">
<label for="username">نام کاربری</label><br />
<input type="text" name="username" class="text" value="" /><br />
<label for="email">آدرس ایمیل</label><br />
<input type="text" name="email" class="text" value="" /> <br />
<br /><br />
<input type="submit" id="submitbtn" name="submit" value="ثبت نام" />
</form>
<script type="text/javascript">
$("#submitbtn").click(function() {
$('#result').html('<img src="<?php bloginfo('template_url'); ?>/images/loader.gif" class="loader" />').fadeIn();
var input_data = $('#wp_signup_form').serialize();
$.ajax({
type: "POST",
url: "<?php echo "http://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; ?>",
data: input_data,
success: function(msg){
$('.loader').remove();
$('<div>').html(msg).appendTo('div#result').hide().fadeIn('slow');
}
});
return false;
});
</script>
<?php
}
else echo "امکان ثبت نام کابران جدید توسط مدیریت سایت غیرفعال شده است";
?>
</div>
</div>
<?php
get_footer();
} //end of if($_post)
}
else {
echo "<script type='text/javascript'>window.location='". get_bloginfo('url') ."'</script>";
}
?>
در آخر میتونید فایل کامل این آموزش رو از اینجا دریافت کنید
- کلمه عبور : www.taktarh.com
- فقط کافیست که فایل رو داخل فولدر قالبتون آپلود کنید
موفق باشید
|
mansour گفته :
مرداد ۱۹م, ۱۳۹۰ در ۹:۱۶ ب.ظ ممنون |
|
امیر حسین گفته :
مرداد ۱۹م, ۱۳۹۰ در ۱۰:۰۳ ب.ظ وقتی آپلود کرددیم دقیقا چه طور باید استفاده کنیم ممنون |
|
ایلیاد موسوی گفته :
مرداد ۱۹م, ۱۳۹۰ در ۱۰:۰۴ ب.ظ با عرض معذرت مرحله آخر آموزش اشتباها حذف شده بود که مجددا اضافه شد نیاز به حذف چیزی نیست |
|
ناصر گفته :
مرداد ۲۸م, ۱۳۹۰ در ۸:۵۹ ق.ظ ممنون ، واقعا در وردپرس همچین چیزی نیاز بود |
|
ALI گفته :
مرداد ۲۹م, ۱۳۹۰ در ۱۲:۴۷ ق.ظ سلام و خسته نباشید برای من فقط این متن نمایش داده می شود چرا ؟؟؟ |
|
علی هدشی گفته :
مرداد ۲۹م, ۱۳۹۰ در ۳:۰۸ ب.ظ سلام از قسمت تنظیمات همگانی سایت فعال کنید |
|
آلکس گفته :
شهریور ۱م, ۱۳۹۰ در ۱۱:۰۹ ب.ظ سلام ایلیاد جان. نم اصلن بلد نیستم که ثبت نام کاربران رو به سایتم اضافه کنم. فک کن اول وردپرس و نصب کردی . بدون هیچ پلاگینی. ممنونــــــــــــــــ |
|
ایلیاد موسوی گفته :
شهریور ۳م, ۱۳۹۰ در ۹:۴۶ ق.ظ بله فقط کافیست کارهایی که توضیح داده شده رو انجام بدید . در ضمن از قسمت تنظیمات همگانی سایت امکان ثبت نام رو فعال کنید |
|
حسین اسماعیلی گفته :
شهریور ۶م, ۱۳۹۰ در ۶:۰۰ ب.ظ سلام ، خسته نباشید ! |
|
ایلیاد موسوی گفته :
شهریور ۶م, ۱۳۹۰ در ۹:۲۱ ب.ظ فکر کنم شما مرحله آخر یعنی ساخت صفحه ی ثبت نام رو انجام ندادید. این کار رو هم انجام بدید بعد صفحه ثبت نام حاضره! |
|
Mansour گفته :
شهریور ۳۰م, ۱۳۹۰ در ۴:۳۸ ق.ظ سلام |
|
علی هدشی گفته :
شهریور ۳۰م, ۱۳۹۰ در ۵:۱۷ ق.ظ کد مرحله ی دوم رو اول فایل signup.php قرار دهید که در مرحله ی آخر از این فایل به عنوان قالب صفحه ی عضویت استفاده شه , در این عکس قسمتی که قالب رو انتخاب می کنید روشن شده |
|
نعیم گفته :
مهر ۲م, ۱۳۹۰ در ۸:۴۹ ب.ظ سلام ایلیا جون ممنون بابت آموزش فقط یه مشکلی رنگ قالب من مشکی چطوری من نوشته ها را عوض کنم |
|
نعیم گفته :
مهر ۲م, ۱۳۹۰ در ۸:۵۱ ب.ظ منظورم رنک متن نوشته هاست که دیده شه |
|
علی هدشی گفته :
مهر ۲م, ۱۳۹۰ در ۱۰:۰۴ ب.ظ سلام . در قسمت body در فایل استایل قالب خود از کد زیر استفاده کنید |
|
حبیب گفته :
دی ۲۱م, ۱۳۹۰ در ۲:۰۵ ب.ظ ما که هرچی تلاش کردیم نتونستیم اگه کسی می دونه مشکل کجاست لطفا راهنمایی کنه |
|
علیرضا گفته :
دی ۲۱م, ۱۳۹۰ در ۹:۳۴ ب.ظ سلام مرسی از آموزش |
|
achi گفته :
بهمن ۹م, ۱۳۹۰ در ۶:۵۵ ب.ظ با سلام .من همه کارها رو طبق گفته ها انجام دادم . این صفحه در ست می شه اما در گوشه سمت راست بالا . هیچ قالب یا کادری نیست . بعد از وارد کردن نام و ایمیل گزینه ثبت نام را که زدم نوشت ایمیل برام فرستاده شد . حال فقط یوزر و پسورد رو که به من داده نباید یه جایی باشه که من بتونم وارد شم ؟ |
|
علی هدشی گفته :
بهمن ۱۰م, ۱۳۹۰ در ۲:۴۵ ب.ظ با سلام |
|
سی صد گفته :
بهمن ۲۴م, ۱۳۹۰ در ۱۲:۳۴ ق.ظ آموزش خیلی مبهم بود به خصوص مرحله دوم اموزش |
|
Ali گفته :
اسفند ۱۲م, ۱۳۹۰ در ۱۱:۵۰ ق.ظ Salam agha lotfan begid chetori in afzone roo pack kardan Register plus in yeki afzone roo Register plus redux roo nasb konim va safe joda gone barash besazim mamnon az hamkariton |
|
علی هدشی گفته :
اسفند ۱۲م, ۱۳۹۰ در ۱۲:۰۶ ب.ظ لطفافارسی تایپ کنید . اصلا متوجه سوالتون هم نشدم ! |
|
ali گفته :
اسفند ۱۳م, ۱۳۹۰ در ۱۲:۳۸ ق.ظ میگم داداش این کار برای افزونه Register plus redux هم همین شکلی باید تنظیم کنیم یا فرق داره |
|
علی هدشی گفته :
اسفند ۱۳م, ۱۳۹۰ در ۷:۱۹ ب.ظ این کار کلا بدون استفاده از افزونه هست که در سایت در دو پست مجزا با عناوین ساخت صفحه ثبت نام و ساخت صفحه ی ورود کاربر آموزش داده شده |
|
اسماعیل گفته :
فروردین ۲۱م, ۱۳۹۱ در ۹:۴۵ ق.ظ سلام یه سوال پیشاپیش سپاس از راهنمائیتون |
|
ARYACLUB گفته :
فروردین ۲۸م, ۱۳۹۱ در ۱:۲۵ ب.ظ ممنون |
|
محمود گفته :
اردیبهشت ۲۶م, ۱۳۹۱ در ۱۲:۰۵ ب.ظ درود خیلی ممنون از این آموزش شما واقعا خیلی لازم بود برای وردپرس اما من یک سوال دارم در این آموزش در صفحه ثبت نام فقط دو مورد نام کاربری و ایمیل کاربر را میپرسه اما فرم ورود نام کاربری و رمز عبور را میپرسه اگر میشه بگید که چه کد هایی را به سایت افزایش دهیم تا رمز عبور را خود افراد تعیین کنند خیلی ممنون میشم اگه کمک کنید میدونم رمز به ایمیل فرستاده میشه ولی میخوام خود عضو رمز را تعیین کنه |
|
ایلیاد موسوی گفته :
اردیبهشت ۲۶م, ۱۳۹۱ در ۱۱:۵۸ ب.ظ فیلدهای اضافی رو میتونید با یک سری پلاگین ها بسازید و با تغییر دادن کدی که برای فیلدهای نام کاربری و ایمیل هست داخل فرم قرار بدید |













مرداد ۱۹م, ۱۳۹۰ در ۶:۲۱ ب.ظ
ممنون … واقعا عالی بود …