نمایش قسمتی از محتوا تنها برای کاربران عضو در وردپرس

4.3/5 - (7 امتیاز)

در این نوشته آموزش چگونگی نمایش دادن قسمتی از محتوا همانند متن، تصاویر، لینک‌های دانلود و… را تنها برای کاربران عضو در سیستم وردپرس آماده ساخته‌ام.

همان‌طور که می‌دانید عضویت در سایت‌ها از جهات گوناگون برای مدیران سایت‌ها حائز اهمیت است برای نمونه در سایت‌هایی نظیر ماندگار وب که به ارایه مقالات و آموزش‌های وردپرسی می‌پردازد و یا سایت‌های دانلود فایل مدیران می‌توانند قسمتی از متن، تصویر، لینک دانلود و… را تنها برای کاربران عضو شده‌ی خود به نمایش در بیاورند.

نمایش محتوا تنها برای کاربران عضو

در این آموزش وردپرس برای نمایش قسمتی از متن تنها برای اعضا و یا نمایش لینک دانلود تنها برای کاربران عضو شده در وردپرس نیاز به ویرایش کلی فایلهای پوسته وردپرس و یا استفاده از افزونه‌های جانبی ندارید بلکه با استفاده از کد میانبر یا همان شورت‌کدی که در این آموزش به وردپرس شما اضافه می‌گردد می‌توانید به راحتی تمام متن‌ها و لینک‌های مورد نظر خود را تنها برای کاربران عضو به نمایش در بیاورید.

برای اضافه کردن کدمیانبر به وردپرس خود و استفاده از حالتِ نمایش محتویات تنها برای کاربران باید دستور زیر را در محل مناسبی از فایل فانکشن (functions.php) قالب وردپرس خود قرار دهید:

function mw_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('mandegarweb', 'mw_user_only');

در دستور بالا ما نام شورت کد یا همان کد میانبر خود را mandegarweb گذاشته‌ایم که بعد از ذخیره کردن تغییرات این شورت‌کد برای استفاده توسط شما دوستان آماده است و می‌توانید متن‌ها، لینک‌ها، تصاویر و… را با قرار دادن در بین برچسب‌های این شورت کد همانند مثال زیر تنها برای کاربران عضو شده‌ی خود به نمایش در بیاورید:

[mandegarweb]
محل قرار گیری متن، لینک، تصویر و... تنها برای نمایش به کاربران عضو شده
[/mandegarweb]

چنانچه کاربری در سایت شما عضو نباشد همان‌طور که در دستور تماشا کردید پیام اخطار به همراه لینک ورود و عضویت برای کاربر به نمایش در خواهد آمد که شما می‌توانید این پیغام را با توجه به نیاز خود تغییر دهید، امیدوار هستم این آموزش وردپرس مورد پسند شما دوستان عزیز قرار گرفته باشد.

4.3/5 - (7 امتیاز)

کانال تلگرام ماندگار وب

    1. بهزاد

      خواهش میکنم امیر جان
      در کنار شما نوشتن بزرگترین افتخاریه که نصیب بنده شده
      امیدوارم بتونم برای دوستان مثبت واقع بشم

  1. سیامک

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

    1. بهزاد

      خواهش میکنم سیامک جان
      تو چند روز آینده آموزشش رو تو نوشته ای جدا در اختیارتون میگذارم
      موفق باشید

  2. بازتاب: ‫‫نمایش قسمتی از پوسته تنها برای کاربران عضو در وردپرس‬‬
  3. ظاهر

    سلام بهزاد جان من کد رو تو فانکشن قالب سایتم گذاشتم ولی ارور میده >>>> Parse error: syntax error, unexpected T_DEC in /home/***/tst/wp-content/themes/twentytwelve/functions.php on line 512

    قسمت پایین کدهای فانکشن گذاشتم! ولی نشد
    مشکلش چیه؟

    1. امیر خلجی مهر

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

    1. امیر خلجی مهر

      بله میشه، باید در فایل single.php تابع the_content رو در محلی که در این کد تعریف شده قرار بدهید

  4. erfan

    سلام
    متنی که نمایش داده نمیشه تو فید ار اس اس یا افزونه هایی که متن رو به اشتراک سایت هایی مثل گوگل+و… که همه باهاش آشنا هستیم چطور؟اونجاهم متن مخفی هست یا لو داده؟

    1. امیر خلجی مهر

      درود
      فکر نکنم نمایش داده بشه، چون این دستور بر روی تابع اصلی اجرا میشه، به هرحال باید امتحان کنید

  5. امین فراست

    سلام
    زمانی که از کد استفاده میکنم و کد را در فانکشن میزارم سایت دیگه بالا نمیاد ارور Server error را میده.
    مشکل چیه ؟

    1. امیر خلجی مهر

      درود
      کد مشکلی نداره دوست من، مشکل میتونه از جاگذاری نامناسب کد باشه، احتمالا یا بدون برچسب php گذاشتید یا با سایر کدهاتون تداخل پیدا کرده

  6. علی

    درود بر شما و تشکر بابت مطالب مفیدتان

    کد دقیقا در فایل functions.php گذاشته شد و شورتکد مربوطه هم در متن جایی که نیاز هست متن به کاربران عضو نمایش داده شود را قرار دادم. بدون هیچ خطایی متن وسط شورتکد همچنان نمایش داده می شود، بعلاوه این که لینک “برای دریافت فایل وارد سایت شوید و یا در سایت ثبت نام کنید! ” در ابتدا و انتهای مطلب یعنی دقیقا جایی که شورتکد هست همچنان نمایش داده می شود! قاعدتا نباید متن وسط شورتکد به کاربران غیرعضو نمایش داده شود اما اینطور نیست و متن همچنان نمایش داده می شود. لطفا راهنمایی فرمایید

    با تشکر

    1. امیر خلجی مهر

      درود دوست من
      علی جان من تست کردم اما کد مشکلی نداره و به درستی کار میکنه
      کد اول در فایل فانکشن پوسته قرار میگیره، شورتکد هم در محتوای نوشته یا برگه
      محتوای بین شورتکد برای کاربران عضو نمایش داده میشه و درخواست ورود و یا نام نویسی نیز برای کاربران غیر عضو.

    1. امیر خلجی مهر

      درود
      میشه اعضای ویژه رول کاربری مخصوص به خودشون رو داشته باشن و کدی که در این نوشته آمده رو طوری نوشت که برای رول کاربری اون اعضا در نظر گرفته بشه
      شاد و پیروز باشید.

  7. علی

    سلام
    ممنون از پاسختون…
    امکانش هست که شما در آموزش های بعدی کدی مثل این مخصوص اعضای ویژه (vip) معرفی کنید ؟!
    با تشکر فراوان…

    1. امیر خلجی مهر

      راستش علی جان به خاطر نبودن زمان آزاد هشت ماهی میشه که در وبلاگ ماندگار وب پستی نداشتم، میتونید در انجمن مطرح کنید:
      http://forum.wp-parsi.com/

  8. محمد مهدی

    سلام میشه همین کد رو جوری گذاشت که فقط کاربرانی که ثبت نام نکردند ببینند یعنی کسایی که ثبت نام کردند نبینند

  9. Hasan

    باعرض سلام و ادب

    من این کد رو نصب کردم .مرسی خیلی عالی هست

    فقط هرچقدر میخوام که لینکی که خودم درست کردم بره نمیشه

    منظور اینجوری میره mysite.ir/wp-login.php

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

    mysite.ir/my-account/

  10. کام

    سلام

    چطوری میشه توی این کد لینک های ورود و عضویت رو شخصی سازی کرد

    مثلان بجای wp-login.php به یک صفحه ورود دیگه رفت مثلا

    ممنون میشم راهنمایی کنید
    باتشکر

    1. امیر خلجی مهر

      با درود.

      برای انجام اینکار افزونه آماده وجود دارد، در گوگل: افزونه تغییر آدرس ورود وردپرس را جستجو کنید.

  11. اپلای پارتی

    سلام و روزتون عالی.
    من از این تابع استفاده کردم و واقعا از شما ممونم. اما مشکلی که هست، میخوام برای ثبت نام به آدرس http://applyparty.com/register بره، اما از این آدرس خطا میگیره. و صفحه register که الان به کاربر نمایش داده میشه، برای سایت من که یک سایت فریلنسرینگ هست کاربردی نداره اصلا. چطور می تونم این مشکل رو رفع کنم؟

دیدگاه خود را بنویسید

ماندگار وب - 1400