انجمن


یک مطلب برای کاربرانی خاص  (۷ نوشته)

  • moein27

    آفلاین
    عضو
    تعداد نوشته‌ها: ۲۶
    # نوشته شده: ۱۲ سال پیش
    ۱۲ بهمن ۱۳۹۰ - ۱۱:۵۴

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

    اما حالا یک پست رو میخواهیم بزنیم که مثلا چند نفر از اعضا اون رو نبینن. یعنی برای سایر کاربر ها نشون بده ولی وقتی اونها میان توی سایت پس از ورود بهشون ( اون پست خاص رو ) نشون نده.

    آیا روشی هست در ورد پرس ؟ چون در برخی سیستم های مدیریت محتوا این وجود داشت.

    ممنون

  • Mostafa

    آفلاین
    ناظم
    تعداد نوشته‌ها: ۵۲۷۶
    تشکر شده: ۵۷۷۷ بار
    # نوشته شده: ۱۲ سال پیش
    ۱۲ بهمن ۱۳۹۰ - ۱۶:۳۴

    سلام، تنها راه اینه که شما یک شرط ساده بنویسید و با تابع strstr کاربران رو جستجو کنید و اون نوشته رو بهش نشون بدین.
    مثال:

    $current_user			= wp_get_current_user();
    $get_current_username	= $current_user->user_login;
    
    if( strstr("user1-user2-user3-user4", $get_current_username) ) {
    	the_content();
    } else {
    	echo "Error Premission!";
    }
    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    Morteza - moein27 - NESTED
  • moein27

    آفلاین
    عضو
    تعداد نوشته‌ها: ۲۶
    # نوشته شده: ۱۲ سال پیش
    ۱۹ بهمن ۱۳۹۰ - ۱۱:۱۱

    ممنون از شما. یعنی این کد را در بخش تابع ها قرار بدم و به جای user1-user2-user3-user4 کاربرانی را که میخوام نبینند با خط تیره جدا کنم و به جاش قرار بدم ؟

  • NESTED

    آفلاین
    عضو فعال
    تعداد نوشته‌ها: ۲۳۵۴
    تشکر شده: ۲۳۷۰ بار
    # نوشته شده: ۱۲ سال پیش
    ۱۹ بهمن ۱۳۹۰ - ۱۱:۱۸

    در فایل functions.php قالبتون قرار بدین
    و بجای user1-user2-user3-user4 اسم یوزرهای مورد نظر رو قرار بدین

    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    moein27
  • moein27

    آفلاین
    عضو
    تعداد نوشته‌ها: ۲۶
    # نوشته شده: ۱۲ سال پیش
    ۱۹ بهمن ۱۳۹۰ - ۲۳:۰۵

    فکر کنم متوجه منظور من نشدید یا من منظورم رو خوب بیان نکردم.

    من یک پست خاص رو میخوام نشون ندم. اگر این رو در فایل تابع ها قرار بدم ، مربوط به کلیه مطالب نمیشه ؟
    اگر این رو در تابع بگذارم ، چه جوری در اون پست مشخص کنم که مثلا این دو خط رو به این کاربرها نشون بده ؟

  • Mostafa

    آفلاین
    ناظم
    تعداد نوشته‌ها: ۵۲۷۶
    تشکر شده: ۵۷۷۷ بار
    # نوشته شده: ۱۲ سال پیش
    ۲۸ بهمن ۱۳۹۰ - ۲۰:۴۳

    من یک پست خاص رو میخوام نشون ندم. اگر این رو در فایل تابع ها قرار بدم ، مربوط به کلیه مطالب نمیشه ؟

    <?php
    	$current_user			= wp_get_current_user();
    	$get_current_username	= $current_user->user_login;
    
    	if( get_post_meta($post->ID, "private", true) == "1" )
    	{
    		if( strstr("user1-user2-user3-user4", $get_current_username) )
    		{
    			the_content();
    		} else {
    			echo "Error Premission!";
    		}
    	} else {
    		the_content();
    	}
    ?>

    در هر پستی که در قسمت زمینه دلخواه آن، نام private مقدار 1 داشته باشد این شرط اجرا میشود.

    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    Morteza - Parsa - moein27
  • moein27

    آفلاین
    عضو
    تعداد نوشته‌ها: ۲۶
    # نوشته شده: ۱۲ سال پیش
    ۳ اسفند ۱۳۹۰ - ۱۳:۳۵

    بسیار بسیار ممنون

درباره‌ی این موضوع



برچسب‌ها

هیچ برچسبی نیست.