محدود کردن دسترسی کاربران برای مشاهده دیگر فایل های رسانه
به صورت پیش فرض، وردپرس به نویسندگان سایت اجازه میدهد که تمام تصاویر موجود در بخش کتابخانه سایت را مشاهده کنند. این مسئله در صورتیکه شما از کاربران مهمان زیادی به عنوان نویسنده در سایت خود استفاده کرده باشید، ممکن است مشکل ساز باشد. با استفاده از این آموزش شما می توانید دسترسی هر کاربر را فقط به مشاهده فایل های آپلود شده توسط او محدود کنید.
چرا باید دسترسی کاربران به دیگر فایل های آپلود شده در کتابخانه را محدود کرد؟
وردپرس به نویسندگان این امکان را میدهد تا تمام فایل های آپلود شده در قسمت کتابخانه سایت را مشاهده کنند. آنها همچنین می توانند تصاویر آپلود شده توسط مدیریت سایت، ویرایشگر و دیگر نویسندگان را مشاهده کنند.
بزارید بهتر بگم، شما تصمیم میگیرید که محصولی را در سایت خود ارسال کنید و یا خبر مهمی را در سایت خود منتشر کنید. خب با این دسترسی که نویسندگان سایت به صورت پیش فرض دارند می توانند تصاویر آپلود شده توسط شما را به راحتی مشاهده کنند.
فایل های آپلود شده توسط شما حتی در قسمت “افزودن رسانه” نیز قابل مشاهده خواهند بود. یعنی وقتی کاربر روی دکمه “افزودن رسانه” کلیک می کند و پنجره ای به صورت پاپ آپ باز می شود تا او فایل مورد نظر خود را آپلود کند، به راحتی می تواند دیگر فایل های آپلود شده را نیز مشاهده کند.
برای بسیاری از سایت ها این موضوع چندان مشکل ساز و مهم نیست اما اگر صاحب سایتی با چند نویسنده هستید، ممکن است بخواهید نویسندگان سایت خود را کمی محدود کنید. پس بهتر است با روش هایی که میتوان این کار را انجام داد آشنا شوید.
روش اول: محدود کردن دسترسی با استفاده از پلاگین
این روش آسان تر بوده و به تمام کاربران پیشنهاد می شود که از این روش استفاده کنند.
شما ابتدا باید پلاگین Restrict Media Library Access را نصب و فعال کنید. این پلاگین فاقد بخش تنظیمات بوده و کافی است بعد از نصب آن در وردپرس، فقط آن را فعال کنید. در صورتیکه با نصب پلاگین در وردپرس آشنایی ندارید، می توانید مقاله سه روش مختلف نصب پلاگین (افزونه) در وردپرس را مطالعه کنید.
بعد از فعالسازی، این پلاگین به طور خودکار کدهای مربوط به بخش کتابخانه را بازبینی کرده و بررسی می کند که آیا کاربر وارد شده مدیر است یا ویرایشگر. در صورتیکه نقش تعریف شده برای کاربر با هیچ کدام از این دو نقش، ارتباطی نداشته باشد یعنی کاربر مورد نظر نه ویرایشگر باشد و نه جزء مدیران سایت، مجاز خواهد بود تا تنها فایل های آپلود شده خود را در قسمت کتابخانه سایت ببیند.
کاربرانی که نقش مدیریتی دارند یا ویرایشگر هستند، همچنان امکان مشاهده تمام تصاویر و فایل های آپلود شده در قسمت کتابخانه را خواهند داشت.
روش دوم: محدود کردن دسترسی به صورت دستی
روش اول برای بیشتر سایت ها کاربردی بوده و دسترسی به فایل های آپلود شده در کتابخانه را برای همه کاربران به جز مدیران و ویرایشگر محدود خواهد کرد.
اما اگر شما میخواهید نقش کاربری مورد نظر خود را اضافه کنید و یا اصلا از پلاگین استفاده نکنید، می توانید از این روش به جای روش اول استفاده کنید. در این روش از کدهای مشابه مورد استفاده در پلاگین استفاده میکنیم، با این تفاوت که می توانید آنها را مطابق نیاز خود اصلاح کنید.
برای این کار کافی است کد زیر را به functions.php قالب سایت خود اضافه کنید:
<br data-mce-bogus="1"> // Limit media library access add_filter( 'ajax_query_attachments_args', 'wpnovin_show_current_user_attachments' ); function wpnovin_show_current_user_attachments( $query ) { $user_id = get_current_user_id(); if ( $user_id & !current_user_can('activate_plugins') & !current_user_can('edit_others_posts') ) { $query['author'] = $user_id; } return $query; }
کد بالا از تابع current_user_can برای بررسی دسترسی کاربر برای فعالسازی پلاگین یا ویرایش پست های دیگر کاربران استفاده می کند. اگر کاربر مورد نظر این دسترسی ها را نداشته باشد، در آن صورت کدهای مربوط به کتابخانه را بازبینی کرده و دسترسی کاربر مورد نظر به بخش کتابخانه را محدود می کند.
امیدواریم این مقاله برای شما مفید و کاربردی بوده باشد. در صورتیکه مشکلی در رابطه با پلاگین و استفاده از آن داشتید، می توانید آن را در قسمت دیدگاه ها در پایین همین پست مطرح کنید تا توسط تیم پشتیبانی در اسرع وقت پاسخ داده شود.
نظرات کاربران
ثبت دیدگاه