نمایش قسمتی از محتوا فقط برای اعضای سایت بدون استفاده از افزونه
بهتر است همیشه بین اعضای سایتتان و کاربران مهمان تفاوت هایی قائل شوید و بدین ترتیب سایر کاربران را نیز به عضویت تشویق کنید. یکی از این روش ها نمایش قسمتی از محتوا فقط برای اعضای سایت است.
با نمایش قسمتی از محتوا فقط برای اعضای سایت، علاوه بر این که برای کسانی که به عضویت سایت شما در آمده اند تفاوت قائل شده اید، می توانید سایر کاربران را برای خواندن ادامه مطلب به عضویت تشویق نمایید.
در این آموزش از وردپرس نارنجی بدون استفاده از افزونه و تنها با چند خط کد نویسی یاد میگیریم که چگونه قسمتی از محتوا را فقط برای اعضا محدود کنیم.
نمایش قسمتی از محتوا فقط برای اعضای سایت
برای اضافه کردن کد میانبر مورد نظر برای ایجاد ویژگی نمایش قسمتی از محتوا فقط برای اعضای سایت، باید تغییراتی در فایل function.php قالب انجام دهید. قبل از انجام هر کاری حتما از وبسایت خود یک فایل پشتیبان تهیه نمایید.
اکنون برای نمایش قسمتی از محتوا فقط برای اعضای سایت، در هاستتان و در مسیر نصب وردپرس به آدرس wp-contecnt/themes/yourtheme مراجعه نموده و پس از ویرایش فایل function.php کد زیر را در جای مناسبی از آن قرار دهید.
function wn_user_only( $atts, $content = null ){ if( null != $content && current_user_can('read') ){ return $content; } else { $mylink = get_permalink(); return '<br/>[ <font color=red>برای دریافت فایل <a href=/wp-login.php?redirect_to='.$mylink.'>وارد شوید</a> و یا <a href=/wp-login.php?action=register>ثبت نام</a> کنید! </font> ]'; } } add_shortcode('wpnarenji', 'wn_user_only');
در قطعه کد بالا برای نمایش قسمتی از محتوا فقط برای اعضای سایت، نام شورت کد یا همان کد میانبر خود را wpnarenji گذاشته ایم. بعد از ذخیره کردن تغییرات این شورت کد برای استفاده آماده است و میتوانید متن ها، لینک ها، تصاویر و… را با قرار دادن در بین برچسب های این شورت کد همانند مثال زیر تنها برای کاربران عضو شده ی خود به نمایش در بیاورید.
[wpnarenji] محل قرار گیری متن، لینک، تصویر و... تنها برای نمایش به کاربران عضو شده [/wpnarenji]
چنانچه کاربری پیش از این در سایت شما عضو نشده باشد، پیغام خطایی به همراه لینک ورود و عضویت برای کاربر به نمایش در خواهد آمد.
سلام با تشکر و احترام
با عرض پوزش یه اشتباه سینتکسی داره کد نام تابع تعریف شده با نام تابع فراخوانی شده در ساخت شورت کد فرق داره یه اشتباه کوچولو تو اول نام که w رو به m تبدیل کنید کد کاملا کار میکنه مرسی بابت راهنماییتون
سلام
ممنون از دقت شما
اصلاح شد