رفتن به مطلب

افزونه ثبت نام


پست های پیشنهاد شده

با سلام خدمت همه دوستان گل

یک افزونه میخوام که بشه باهاش یک فرم ثبت نام یا ورود ساخت و شرت کد اون رو توی یک صفحه خاص قرار داد ،

و کاربران بدون عضویت توان دیدن ادامه مطلب رو نداشته باشن. ممنون اگر فروشی هم هست حاضرم بخرم. ;)

لینک به ارسال

سلام

برای ساخت صفحه ثبت نام میتونید از اسکریپت زیر استفاده کنید:


<?php
$err=null;
$succ=null;
global $wpdb, $PasswordHash, $current_user, $user_ID;
if(isset($_POST['task']) && $_POST['task'] == 'register' ) {
$pwd1 = $wpdb->escape(trim($_POST['pwd1']));
$pwd2 = $wpdb->escape(trim($_POST['pwd2']));
$email = $wpdb->escape(trim($_POST['email']));
$username = $wpdb->escape(trim($_POST['username']));

if(is_user_logged_in()) {
$err = 'برای ثبت نام نباید لاگین باشید.';
}
elseif( $email == "" || $pwd1 == "" || $pwd2 == "" || $username == "") {
$err = 'لطفا تمامی فیلد های زیر را پر کنید';
} else if(!filter_var($email, FILTER_VALIDATE_EMAIL)) {
$err = 'ایمیل وارد شده نامعتبر است';
} else if(email_exists($email) ) {
$err = 'کاربری قبلا با این ایمیل ثبت نام کرده ، لطفا ایمیل یگری وارد نمایید.';
} else if($pwd1 <> $pwd2 ){
$err = 'پسورد های وارد شده نا همسان هستند.';
} else {
$user_id = wp_insert_user( array ('user_pass' => apply_filters('pre_user_user_pass', $pwd1), 'user_login' => apply_filters('pre_user_user_login', $username), 'user_email' => apply_filters('pre_user_user_email', $email), 'role' => 'subscriber' ) );
if( is_wp_error($user_id) ) {
$err = 'خطا در ساخت اکانت';
} else {
do_action('user_register', $user_id);
$succ = 'ثبت نام با موفقیت انجام شد ، میتوانید از فرم زیر لاگین کنید.';
}

}

}

?>

<style>
.inp-register{
border: 1px solid #cacaca;
width: 300px;
height: 30px;
margin: 10px;
font-family: 'BKoodakBold','Tahoma';
font-size: 13pt;}
#box-regiter-form{
width:322px;
margin:auto;
margin: 50px auto 80px auto;}
#btn-regi{
float: left;
font-family: 'BTitrTGEBold';
font-size: 16pt;
font-weight: normal;
background-color: #000;
color: #fff;
border: 0;
margin:10px;
padding:0 24px;
cursor: pointer;}
#msg-b{
margin: 0 10px;
padding: 5px;
font-family: 'BYEKAN','Tahoma';
text-align: center;}
.cptch_block{
margin-top: -76px !important;
margin-right: 218px !important;}
#cptch_input{
width: 34px !important;
border: 1px solid #CACACA;
height: 24px;
text-align: center;
font-size: 13pt !important;
direction: rtl !important;}
</style>

<div id="box-regiter-form">
<?php
if($err)
echo '<div class="alert alert-danger" role="alert"><span class="glyphicon glyphicon-exclamation-sign" aria-hidden="true"></span><span class="sr-only">Error:</span>'.$err.'</div>';

if($succ)
{

echo '<div class="alert alert-success" role="alert"><span class="glyphicon glyphicon-exclamation-sign" aria-hidden="true"></span><span class="sr-only">Error:</span>'.$succ.'</div>';
}
else
{
?>
<form method="post">
<div class="form-group has-feedback">
<input class="form-control" type="text" value="<?php echo $_POST['username']; ?>" name="username" id="username" placeholder=" نام کاربری " /><br>

</div>

<div class="form-group has-feedback">
<input class="form-control" type="password" value="<?php echo $_POST['pwd1']; ?>" name="pwd1" id="pwd1" placeholder=" رمز عبور " /><br>

</div>

<div class="form-group has-feedback">
<input class="form-control" type="password" value="<?php echo $_POST['pwd2']; ?>" name="pwd2" id="pwd2" placeholder=" تکرار رمز عبور " /><br>

</div>

<div class="form-group has-feedback">
<input class="form-control" type="text" value="<?php echo $_POST['email']; ?>" name="email" id="email" placeholder=" ایمیل " /><br>

</div>

<div class="form-group">
<button type="submit" name="btnregister" class="btn btn-success" >ثبت نام</button>
</div>
<input type="hidden" name="task" value="register" />
</form>
<?php
}
?>
</div>

برای استفاده میتونید یک قالب برگه ایجاد و مثل http://mrprogrammer.net/registeration پیاده کنید.

و اما برای مخفی کردن مطلب برای کاربران مهمان باید کد زیر را به functions.php اضافه کنید:


add_filter('the_content', 'loack_content_f');
function loack_content_f( $atts, $content = null ) {
if ( is_user_logged_in() && !is_null( $content ) && !is_feed() )
return $content;
return 'این مطلب فقط برای اعضای سایت قابل مشاهده است. لطفا وارد شوید یا ثبت نام کنید.'; }

لینک به ارسال
  • 3 ماه بعد...
  • 1 ماه بعد...

افزونه برای ثبت نام :

register plus

login with ajax

acp

برای دسترسی کاربران هم میتونید از خود توابع وردپرس استفاده کنید :


if (is_user_logged_in ()) {
the_content();
}
else {
echo 'برای دیدن مطلب لطفا عضو سایت شوید';
}

ویرایش شده توسط kasra
لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...