سعید شعبانی

افزودن فرم ورود - خروج به نوار بالایی سایت به همراه چند ویژگی دیگر

20 پست در این موضوع قرار دارد

دوستان سلام خسته نباشید

من می خواهم در نواربالایی سایتم یک فرم ورود و خروج بگذارم تقریبا مثل همینی که داخل آموزش گذاشتم ولی این اولا به صورت ajax هست بعد هم از قالب جدا میشه. ولی من می خواهم تقریبا مثل فرم ورود سایت wpmu.org باشه. ممنون می شم اگر منو راهنمایی کنید البته برای این فرم هیچ افزونه ای را هم نمی خواهم استفاده کنم. راستی می خواهم دو ویژگی زیر را هم داشته باشه :

1- پس از ورود موفقیت آمیز به یک برگه دلخواه ریدایرکت شود

2- پس از خروج هم به صفحه اول بازگردد

post-412-0-97780100-1372362934_thumb.jpg

ویرایش شده در توسط سعید شعبانی

به اشتراک گذاری این پست


لینک به پست

من خودم تا حدی پیش رفتم.

الان با این کد با استفاده از استایل منو قالب فرم ورود را در هدر قرار دادم.


<?php if (is_user_logged_in()) { ?>
<div id="topMenu">
<ul class="menu">
<li>
<a href="<?php echo wp_logout_url( get_permalink() ); ?>" title="Logout">خروج</a>
</li>
</ul>
</div>
<?php } else { ?>
<div id="topMenu">
<ul class="menu">
<li>
<a href="http://dnoj.ir">ورود</a>
<ul class="sub-menu">
<?php $args = array(
'echo' => true,
'redirect' => site_url( '/%D8%AF%D8%A7%D8%B4%D8%A8%D9%88%D8%B1%D8%AF/' ),
'form_id' => 'loginform',
'label_username' => __( 'Username' ),
'label_password' => __( 'Password' ),
'label_remember' => __( 'Remember Me' ),
'label_log_in' => __( 'Log In' ),
'id_username' => 'user_login',
'id_password' => 'user_pass',
'id_remember' => 'rememberme',
'id_submit' => 'wp-submit',
'remember' => true,
'value_username' => NULL,
'value_remember' => false ); ?>
<?php wp_login_form( $args ); ?>
</ul>
</li>
</ul>
</div>
<?php } ?>

بخش ورود درست هست و ریدایرکت هم به درستی انجام میشه ولی بخش خروج ریدایرکتش در همه جا درست انجام نمیشه. من می خواهم وقتی که کاربر از سایت خارج شد به همون صفحه ای که در اون بوده برگرده. داخل codex وردپرس کد زیر را برای این کار گذاشته بود ولی وقتی داخل صفحه صفحه اصلی هستیم و خارج می شویم به اولین پست همون صفحه منتقل میشه ولی من می خواهم به همون صفحه ای که درونش هست برگرده. همین مشکل با دکمه فراموشی رمز هم وجود داره


<a href="<?php echo wp_logout_url( get_permalink() ); ?>" title="Logout">Logout</a>

بعد کد زیر که باید لینک عضویت را نشان دهد این کار را نمی کند چرا؟


<?php wp_register(); ?>

ویرایش شده در توسط سعید شعبانی

به اشتراک گذاری این پست


لینک به پست

آدرس صفحه جاری

http://stackoverflow.com/questions/189113/how-do-i-get-current-page-full-url-in-php-on-a-windows-iis-server


<?php echo site_url('wp-login.php?action=register', 'login') ?>

به اشتراک گذاری این پست


لینک به پست

آدرس صفحه جاری

http://stackoverflow...dows-iis-server


<?php echo site_url('wp-login.php?action=register', 'login') ?>

ممنون لینک عضویت درست شد ولی آدرس صفحه جاری را نتونستم بفهمم. لطفا کدش را اینجا بگذارید

به اشتراک گذاری این پست


لینک به پست

تابع


function currentPageURL() {
$curpageURL = 'http';
if ($_SERVER["HTTPS"] == "on") {$curpageURL.= "s";}
$curpageURL.= "://";
if ($_SERVER["SERVER_PORT"] != "80") {
$curpageURL.= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
} else {
$curpageURL.= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
}
return $curpageURL;
}

به اشتراک گذاری این پست


لینک به پست

تابع


function currentPageURL() {
$curpageURL = 'http';
if ($_SERVER["HTTPS"] == "on") {$curpageURL.= "s";}
$curpageURL.= "://";
if ($_SERVER["SERVER_PORT"] != "80") {
$curpageURL.= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
} else {
$curpageURL.= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
}
return $curpageURL;
}

میشه بپرسم چرا این تابع اینجوریه؟ روی سرور فشار نمیاره؟

به اشتراک گذاری این پست


لینک به پست

چطوریه؟

نه

به اشتراک گذاری این پست


لینک به پست

چطوریه؟

نه

خوب حالا چجوری باید داخل تابع


<?php echo wp_logout_url( get_permalink() ); ?>

یا


<?php echo wp_lostpassword_url( get_permalink() ); ?>

بگذارمش؟

ویرایش شده در توسط سعید شعبانی

به اشتراک گذاری این پست


لینک به پست

به جای تابع get_permalink استفاده کنید

به اشتراک گذاری این پست


لینک به پست

به جای تابع get_permalink استفاده کنید

من به شکل زیر گذاشتم ولی صفحه باز نمیشه


<a href="<?php echo wp_logout_url function currentPageURL() {
$curpageURL = 'http';
if ($_SERVER["HTTPS"] == "on") {$curpageURL.= "s";}
$curpageURL.= "://";
if ($_SERVER["SERVER_PORT"] != "80") {
$curpageURL.= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
} else {
$curpageURL.= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
}
return $curpageURL;
} ; ?>" title="Logout">خروج</a>

به اشتراک گذاری این پست


لینک به پست

بلاک توابع رو شما باید در فایل functions قرار دهید

و آنرا در فایلهای دیگر استفاده کنید

http://www.w3schools.com/php/php_functions.asp

http://www.tizag.com/phpT/phpfunctions.php

http://php.about.com/od/learnphp/ss/php_functions.htm

<?php echo wp_logout_url( currentPageURL() ); ?>

به اشتراک گذاری این پست


لینک به پست

درست شد فقط آخر تمام لینک هایی که ریدایرکت می خواهد بکنه کد زیر اضافه می شه ولی در آخر به همون صفحه بر می گرده. این کد برای چی هست میشه پاکش کرد؟


/&_wpnonce=d83da92903

به اشتراک گذاری این پست


لینک به پست

کد هش شده برای درخواستها در وردپرس هست

اگر حذف شود احتمالا دیگر کارایی ندارد دستورات

به اشتراک گذاری این پست


لینک به پست

کد هش شده برای درخواستها در وردپرس هست

اگر حذف شود احتمالا دیگر کارایی ندارد دستورات

خوب موتور های جستجو که این لینک ها را دنبال نمی کنند درسته؟ یا باید لینک ها رو nofollow کنم؟

به اشتراک گذاری این پست


لینک به پست

خوب موتور های جستجو که این لینک ها را دنبال نمی کنند درسته؟ یا باید لینک ها رو nofollow کنم؟

فکر نکنم چون صفحه لاگین noindex,nofollow هست

ولی بازم مشکلی نداره اگر انجام دهید

به اشتراک گذاری این پست


لینک به پست

<?php
function currentPageURL() {
$curpageURL = 'http';
if ($_SERVER["HTTPS"] == "on") {$curpageURL.= "s";}
$curpageURL.= "://";
if ($_SERVER["SERVER_PORT"] != "80") {
$curpageURL.= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
} else {
$curpageURL.= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
}
return $curpageURL;
}

echo wp_logout_url( currentPageURL() ); ?>

به اشتراک گذاری این پست


لینک به پست


<?php
function currentPageURL() {
$curpageURL = 'http';
if ($_SERVER["HTTPS"] == "on") {$curpageURL.= "s";}
$curpageURL.= "://";
if ($_SERVER["SERVER_PORT"] != "80") {
$curpageURL.= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
} else {
$curpageURL.= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
}
return $curpageURL;
}

echo wp_logout_url( currentPageURL() ); ?>

ممنون درست شده فقط چجوری میشه کاری کرد تا زمان خروج به صفحه اصلی ریدایرکت بشه؟

به اشتراک گذاری این پست


لینک به پست

بجای تابعی که پارسا داده از تابع get_bloginfo استفاده کنید و بهش مقدار home رو بدید

به اشتراک گذاری این پست


لینک به پست

بجای تابعی که پارسا داده از تابع get_bloginfo استفاده کنید و بهش مقدار home رو بدید

درست شد از کد زیر استفاده کردم


<?php echo wp_logout_url( home_url() ); ?>

در حال حاظر وقتی کابر ها از طریق این فرم به سایت وارد می شند به صفحه ای که نشخص کردم ریدایرکت می شوند ولی وقتی از طریق wp-login.php وارد سایت می شوند دیگه ریدایرکت اینجا کار نمی کنه و کاربرا به داشبورد وردپرس منتقل می شوند چجوری میشه همه کاربرا بجز admin را وقتی از طریق wp-login.php وارد می شوند را هم به صفحه مورد نظر منتقل کرد؟

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط webdesign
      فرم های کوتاه
      سعی کنید اطلاعاتی را از کاربر بخواهید که واقعاً مورد نیاز است و از قرار دادن فیلدهای اضافی در فرم ها خودداری نمایید. معمولاً کاربران تمایلی به پر کردن فرم هایی که اطلاعات خیلی شخصی میخواهند، ندارند. چنانچه نیاز به اطلاعات بیشتری راجع به کاربر دارید بعد از ثبت فرم میتوانید از طریق ایمیل آن اطلاعات را درخواست کنید. پس از دریافت اطلاعات اضافه و غیر ضروری خودداری کنید و سعی کنید فیلدهای مشابه در فرم قرار ندهید برای مثال چند فیلد شماره تلفن
      در نهایت
       بعد از پر کردن فرم و ثبت آن توسط کاربر از کاربر تشکر کرده و فیدبک بدهید. ایجاد یک فرم استاندارد و کاربرپسند شانس شما را برای جمع آوری اطلاعات و تبدیل یک بازدید کننده به کاربر دائمی وب سایت را افزایش میدهد.
       
      استفاده از فرم های عمودی
      فرم های عمودی نسبت به فرم های افقی و چند ستونه، کاربرپسندتر هستند به خصوص در فرم های طولانی. بهترین حالت این است که تمامی فیلدها در یک صفحه از بالا تا پایین قرار بگیرند بدون اینکه کاربر نیاز به اسکرول کردن برای دیدن ادامه فرم داشته باشد.
       فرم های افقی تنها در صورتی که فرم خیلی کوتاه باشد مثلا فقط نیاز به وارد کردن ایمیل و رمز عبور باشد میتوانند به کار برده شوند. در غیر این صورت کلا بهتر است فرم را به صورت عمودی طراحی نمایید.
       همچنین فیلدهای فرم باید یک ترتیب منطقی داشته باشند مثلاً بعد از نام همیشه نام خانوادگی را قرار میدهیم و بعد فیلدهای دیگر. برای مثال ترتیب نام، ایمیل، نام خانوادگی یک ترتیب غیرمنطقی میباشد.
      سهولت در خواندن و اسکن کردن فرم
      همانطور که میدانید کاربران در وب سایت ها معمولاً مطالب را اسکن میکنند یعنی نگاه اجمالی به همه مطالب می اندازند تا مطلب مورد نظر خود را پیدا کنند یا تصمیم بگیرند که چه عملیاتی را در سایت انجام خواهند داد. همین مسئله برای فرم ها هم صدق میکند. کاربر با دیدن فرم باید به سرعت متوجه شود که آن فرم چه کاربردی دارد و چه اطلاعاتی میخواهد.
      ویژگی های مورد نیاز برای اینگونه فرم ها عبارتند از:
      • تضاد یا کنتراست: متن ها فرم باید کوتاه و به راحتی قابل خواندن باشند. هرگز از رنگ های مختلف در فرم استفاده نکنید و سعی کنید همان حالت استاندارد و رایج نوشته تیره بر روی زمینه روشن را به کار ببرید.
      • گروه بندی و فاصله گذاری: اطلاعات مشابه را در فرم های طولانی گروه بندی کنید. برای مثال در زمان جمع آوری اطلاعات پرداخت: اطلاعات مربوط به حمل و نقل، آدرس،  کد پستی و ... در یک گروه قرار دهید. فاصله بین برچسب ها و فیلدهای مربوط به آن ها را با دقت قرار دهید تا کاربر به راحتی متوجه شود که کدام برچسب و عنوان متعلق به کدام فیلد میباشد.
      • پایان مشخص: دکمه ثبت یا پایان را به طور مشخص و بزرگ قرار دهید. متن داخل دکمه باید دقیقاً به کاربر بگوید که با فشار دادن آن چه اتفاقی خواهد افتاد مانند کلمه  های ثبت، پرداخت یا مرحله بعد. در صورت انجام عملیات ثبت، حتماً کاربر را از تمام شدن عملیات و ثبت شدن کامل فرم مطلع نمایید.
      قرار دادن برچسب های شناور

        همیشه در مورد اینکه آیا باید از متن های راهنما و کمکی در فیلدهای یک فرم استفاده کرد یا نه بحث های زیادی بوده است. مشکل اصلی استفاده از این متن ها زمانی است که با کلیک کردن بر روی فیلد مورد نظر، متن راهنما همچنان درون فیلد باقی میماند و کاربر برای وارد کردن اطلاعات مجبور به پاک کردن آن میشود.
       اگر نیاز به استفاده از متن و برچسب های راهنما دارید سعی کنید آن ها را به صورت تعاملی و واکنش گرا قرار دهید یعنی با کلیک کردن کاربر برچسب جا بجا شده و به سمت بالا برود. به اینگونه برچسب ها برچسب شناور میگویند. همچنین این حالت حرکت برچسب باعث جلب توجه کاربر و جذابیت هم میشود.
      فرمت گذاری یا ماسک فیلد
      گذاشتن فرمت یا ماسک برای فیلد به این معنی است که در زمان تایپ و وارد کردن اطلاعات توسط کاربر در یک فیلد، آن فیلد به طور خودکار به اطلاعات ورودی کاربر یک فرمت خاص میدهد. برای مثال جدا کردن روز و ماه و سال یا جدا کردن کد منطقه در شماره تلفن و ... به طور خودکار. این کار از بروز خطاهای احتمالی در زمان تایپ جلوگیری کرده و ورود اطلاعات را برای کاربر آسان تر می نماید.
      به مثال زیر توجه نمایید، یک شماره تلفن در فرمت های مختلف:
      • (000) 000-0000
      • 000-000-0000
      •  0000000000
      کاربر میتواند شماره تلفن را به هر 3 مدل بالا وارد کند، چطور باید تشخیص دهد که فرمت درست و مدنظر شما کدام است؟ اینجاست که ماسک فیلد یا همان فرمت گذاری به کمکتان می آید. با استفاده از این ویژگی خود فیلد به طور خودکار کاربر را راهنمایی میکند و کاربر بدون فکر کردن تنها نیاز دارد که شماره را وارد کند. (این کار همچنین باعث راحتی کاربران موبایل میشود چون دیگر نیازی به سوئیچ کردن بین اعداد و نوشته در کیبورد ندارند).
      ایجاد فرم های سازگار با کیبورد
      از آنجایی که نمی دانید کاربر با استفاده از چه دستگاهی اقدام به پر کردن فرم می نماید باید طراحی فرم به گونه ای باشد که چه در موبایل و چه در کامپیوترهای خانگی به راحتی قابل پر کردن باشد. پس با در نظر گرفتن کیبوردهای موجود در دستگاه های مختلف، فیلد های فرم را متناسب با آن ها طراحی نمایید.
      در دسکتاپ، کاربر باید بتواند بدون نیاز به کلیک کردن بر روی هر فیلد، فیلد ها را به ترتیب پر کرده و به طور اتوماتیک با پر کردن فیلد یا فشار دادن دکمه های tabb یا enter ، جلو برود. سایت w3.org مجموعه کاملی از کیبوردها را ارائه کرده است.
      در موبایل، نوع کیبورد را با نوع داده ای که مورد نیاز است هماهنگ تنظیم نمایید. اگر داده ورودی از نوع حروف میباشد، از کیبورد آلفا و برای اعداد از کیبورد  numeric استفاده کنید.
      حالت تشخیص اتوماتیک
      سعی کنید فیلدها را طوری طراحی کنید که در صورت برخورد با کاراکترهای خاص و کلمات مشخص، به کاربر پیشنهاداتی را برای پر کردن فیلد ارائه کنند. درست مانند سیستم جستجوی گوگل که به محض تایپ کردن یک کلمه تعداد زیادی پیشنهاد به کاربر ارائه میکند. مثلاً در فیلد ایمیل به محض تایپ شدن عبارت web@g... ، گزینه web@gmail.com به کاربر ارائه شود.
      مزایای این کار:
      • پر کردن فرم برای کاربر راحتتر میشود به خصوص در موبایل
       • از اشتباهات تایپی کاربر جلوگیری میشود.
      منبع : 7 نکته کاربردی در طراحی فرم های استاندارد
    • توسط mohammadrmm
      سلام
      دوستان افزونه ای میخوام که کاربران همچنان که در سایت ثبت نام می کنند بتونن با همون نام کاربری از فروشگاه سایت خرید کنند و سابقه خرید،‌ لینک دانلود، شناسه سفارش و ... رو در اکانتشون داشته باشن.
      آیا همچین افزونه ای داریم؟
      تشکر
    • توسط iHooMan
      درود و وقت بخیر 
       
      من  توی پروژه ای لازم دارم از فرم وب سایت مبدا وارد یه وب سایت دیگه بشم .
      که دو حالت داره یکی یوزر معمولی - یکی همکار 
      واسه یوزر معمولی فقط کپچا میخواد سایت مقصد  واسه همکار یوزر و پسورد و کپچا 
      من میخوام با یه فرم تو وب سایت خودمون اطلاعات بگیرم پاس بدم توی اون وبسایت نمیخوام اون اطلاعات تو وبسایت مقصد پر بشه ( لوگین توی وب سایت ما انجام بشه بعد به صفحه لوگین شده اونور پاس بده )
      از چی استفاده کنم ajax یا ... ? 
      روند کاریش تو وردپرس کسی میتونه توضیح بده ؟
      پینوشت : وب سایت مقصد از md5.js واسه اینکرپشن دیتا استفاده میکنه . 
       
      سپاس
       
    • توسط newharf
      سلام چطور میتونم همچین فرمی برای دیدگاه های مطالب بسازم
      http://uupload.ir/files/ajsr_untitled-233.jpg
    • توسط Mohammad B2F
      سلام
      تو این مدت که سایت داشتم و کار کردم اصلا سمت فروم برای سایتم نرفتم...
      الان تصمیم گرفتم فروم برای ساتم راه اندازی کنم !
      ولی هیچ اطلاعات و دانشی ازش ندارم...
      یکم سرچ کردم ، اما فهمیدم چندین و چند سیستم مدیریت فروم هست ...
      اما از اونجایی که تجربه ندارم و هیچ شناختی ندارم نیاز به راهنماییتون دارم.
      کدوم سیستم مدیریت فروم رو نصب کنم بهتره ؟
      فکر کنم مهمترین چیزی که نیاز دارم سئوست ...
      بعد از اون هم راحت بودن بخش مدیریت.
      + بعضی از این فروم ها نیاز به لایسنس دارند ! لطفا بفرمایید لایسنیس معتبر از کجا خریداری کنم ؟