آموزش محدود کردن بخشی از مقاله یا برگه برای اعضاء

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

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

    محدود کردن محتوا در وردپرس با افزونه Restrict Content

    Restrict a portion of the article or tab to members

    با نصب این افزونه یک شوردکد برای اینکار ایجاد میکند که توی محتوا قبل و بعد از متنی که قراره مخفی شود قرار میدهیم تا نمایش آن محتوا غیرقابل نمایش برای کاربران عادی شود.

    برای انجام کار شما توی ادیتور متن وردپرس میتوانید از شوردکد زیر قبل و بعد از متن یا رسانه مورد نظر استفاده کنید:

    [restrict]
    
    این متنی است که قرار است مخفی شود و فقط برای اعضا سایت قابل مشاهده است.
    
    [/restrict]

    درصورتی که بخواهیم محتوا فقط برای نقش کاربری خاصی مشاهده شود میتوانیم شناسه آن نقش کاربری را به این شکل وارد کنیم:

    [restrict userlevel="editor"]
    
    این متنی است که قرار است مخفی شود و فقط برای اعضا ویرایشگر نمایش داده شود سایت قابل مشاهده است.
    
    [/restrict]

    محدود کردن محتوا در وردپرس به روش دستی و ایجاد شوردکد اختصاصی

    کد های زیر را در فایل function.php قالب حود قرار دهید و به جای متن “این بخش از محتوا مخصوص اعضای سایت است” میتوانید متن دلخواه خود را نمایش دهید:

    function tmt_restrict_shortcode( $atts, $content = null ) {
    	$atts = shortcode_atts( array(
    		'userlevel' => 'none',
    	), $atts, 'tmt-restrict' );
    
        $text = '<div class="tmt-restricted-content-message" style="color: #760c0c;background: #f6e6e6;border-radius: 5px;margin: 10px;padding: 10px 20px;text-align: center;">این بخش از محتوا مخصوص اعضای سایت است</div>';
    
    	if (is_user_logged_in()) {
    		$user = wp_get_current_user();
    		if($atts['userlevel'] == 'none') {
    			return do_shortcode( $content );
    		} elseif($atts['userlevel'] == $user->roles[0]) {
    			return do_shortcode( $content );
    		} else {
                return $text;
            }
    	} else {
    		return $text;
    	}
    }
    
    add_shortcode( 'tmt-restrict', 'tmt_restrict_shortcode' );

    و برای استفاده در محتوای متنی نوشته یا برگه میتوانید مانند آموزش های افزونه از شورد کد زیر استفاده کنید:

    [tmt-restrict]
    
    این متنی است که قرار است مخفی شود و فقط برای اعضا سایت قابل مشاهده است.
    
    [/tmt-restrict]

    و در صورتی که نیاز دارید برای نقش کاربری خاصی یا نقش های کاربری پیشفرض وردپرس قرار دهید میتوانید نقش کاربری را در کد زیر قرار دهید:

    [tmt-restrict userlevel="editor"]
    
    این متنی است که قرار است مخفی شود و فقط برای اعضا سایت قابل مشاهده است.
    
    [/tmt-restrict]
    علی امینی

    علی امینی

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

    آدرس ایمیل شما منتشر نخواهد شد.