فعال کردن آپلود فایل برای نقش مشارکت کننده در وردپرس
- مقالات آموزشی
- بروزرسانی شده در
در این آموزش طبق خواسته بعضی از کاربران قصد داریم فعال کردن آپلود فایل برای مشارکتکننده در وردپرس را آموزش دهیم. همانطور که اطلاع دارید در وردپرس نقشهای کاربری متفاوتی وجود دارد که قبلاً برای شما آنها را کاملاً توضیح دادهایم. هرکدام از این نقشها دسترسیهای متفاوتی را دارد و مدیر سایت میتواند برای آنها محدودیتهای خاص خود را در نظر بگیرد. برای فعال کردن آپلود فایل برای نقش مشارکت کننده در وردپرس این آموزش را ببینید.
فعال کردن آپلود فایل برای نقش مشارکت کننده بسیار راحت است و شما میتوانید بهراحتی این مشکل را حل کنید. اما ممکن است شما تازه با وردپرس آشنا شده باشید و از این مسئله اطلاع نداشته باشید. به همین جهت با استفاده از این روش میتوانید در یک مدتزمان کوتاه این کار را انجام دهید. اگر تا پایان این مقاله همراه میهن وردپرس باشید مشاهده میکنید که مشکل شما بهراحتی و بهسرعت حل خواهد شد.
آنچه در این مقاله میخوانید
آپلود فایل توسط Contributor در وردپرس
در نظر داشته باشید که شما میتوانید توسط برنامهنویسی بسیاری از نیازهای خود و سایتتان را در هنگام کار با این سیستم مدیریت محتوا انجام دهید. کد نویسی به شما کمک میکند افزونههای اضافی را از سایت خود حذف کنید و در یک مدتزمان کوتاه بهوسیله یک قطعه کد خود مشکلتان را برطرف کنید.
شما ممکن است هنگام استفاده از افزونهها مشکلات بسیاری را تجربه کنید؛ یا اینکه ممکن است برخی از افزونهها با سایت شما و دیگر قالب و افزونهها سازگاری نداشته باشند و بسیاری دیگر از مشکلاتی که استفاده از یک افزونه ممکن است برای شما به وجود بیاورد. پس بدون استفاده از افزونه و با استفاده از کد زیر مشکل خود را حل کنید. همچنین دقت کنید که این قابلیت گرچه ساده به نظر میرسد اما برای یک سایت بسیار مهم و کاربردی است و هرگز نباید اهمیت آن را دستکم بگیرید.
فعال کردن آپلود توسط Contributor با User Role Editor
ممکن است شما بهعنوان مدیر یک سایت برای تولید محتوای خود چندین نویسنده در نظر بگیرید و برای آنها دسترسیهایی در نظر بگیرید. با این کار شما میتوانید کاربران سایت خود را تحت کنترل و نظارت خود داشته باشید. شما برای اینکه بتوانید پستهای نویسندگان سایت خود را قبل از انتشار بازبینی کنید و بهنوعی آنها را بررسی کنید؛ میتوانید نویسندگان سایت خود را بهعنوان مشارکتکننده در نظر بگیرید. یکی از مزیتهایی که این کار دارد این است که باعث میشود نقصهایی که در نوشتههای نویسندگان وجود دارد را برطرف کنید.
باید به این نکته توجه داشته باشید که مشارکتکنندهها نقش بسیار محدودی در سایت دارند و دسترسی آنها بسیار محدود میباشد. مشارکتکنندهها تنها میتوانند پست بنویسند و آنها را ویرایش کنند؛ ولی این قدرت را ندارند که هیچ پستی را در سایت شما منتشر کنند.
اما زمانی که شما نویسندگان سایت خود را در نقش مشارکتکننده تعریف کنید؛ با یک مشکل مواجه میشوید و آن این است که این کاربران دیگر قادر به آپلود فایل نیستند. درواقع این کاربران در نقش مشارکتکننده قادر نیستند در محتوای خود تصاویر و… را آپلود کنند. مهمترین مشکلی که درزمینه مشارکتکنندهها وجود دارد همین موضوع است.
اکثر مدیران سایتهای وردپرسی برای رفع این مشکل افزونههای مختلفی مانند User Role Editor را نصب میکنند و از این طریق این امکان را برای نویسندگان سایت خود فراهم میکنند. اما ما تصمیم گرفتیم این کار را بدون نصب هیچگونه افزونهای به شما کاربران میهن وردپرس آموزش بدهیم. اما اگر شما مایل به استفاده از کد نویسی نیستید و قصد استفاده از این افزونه را دارید میتوانید آن را از مخزن وردپرس دریافت نمایید. مراحل نصب افزونه را نیز قبلا برای شما در سایت قراردادهایم.
نحوه فعالسازی آپلود فایل برای مشارکتکننده
همانطور که گفتیم اگر شما در هنگام کار با وردپرس آشنایی کمی با کد نویسی داشته باشید میتوانید امکانات بسیاری را به این سیستم مدیریت محتوا اضافه کنید. این قابلیت نیز از این قاعده مستثنی نیست و شما میتوانید با استفاده از قطعه کدی که در این مقاله برای شما قرار دادهایم این کار را بهراحتی انجام دهید.
فایل functions.php یک فایل اصلی در سایت شما محسوب میشود که توسط آن میتوانید خیلی از امکانات را به سایت خود اضافه کنید. در اینجا ما قصد داریم این کار را با کد نویسی و تنها با اضافه کردن یک قطعه کد ساده به فایل همیشه کارآمد functions.php به شما آموزش بدهیم.
if ( current_user_can('contributor') && !current_user_can('upload_files') )
add_action('admin_init', 'allow_contributor_uploads');
function allow_contributor_uploads() {
$contributor = get_role('contributor');
$contributor->add_cap('upload_files');
}
به همین راحتی و توسط این قطعه کد توانستید امکان آپلود فایل را برای نویسنده سایت خود فعال کنید. بهاینترتیب زمانی که نویسنده وارد قسمت نوشته تازه میشود میتواند از این قابلیت استفاده نماید. این ویژگی به نویسنده این امکان را میدهد که با استفاده از آپلود تصاویر بتواند محتوای بهتری را تولید کند. همچنین این کار باعث میشود سایت شما مخاطبان بیشتری را به خود جذب کند.
این نکته را در نظر داشته باشید که در هنگام دادن دسترسی به کاربران خود نهایت دقت را داشته باشید. شما باید همواره امنیت سایت خود را در نظر بگیرید و به آن توجه ویژهای داشته باشید. موضوع دیگری که باید به آن توجه کنید این است که به حجم تصاویر آپلود شده در سایت توجه داشته باشید. با آپلود بیشازحد یا آپلود تصاویر و فایلهایی با حجم بالا ممکن است ظرفیت هاست شما پر شود. این موضوع برای سایت شما خطرناک است و باعث میشود سایتتان برای کاربران نمایش داده نشود.
پیروز و سربلند باشید.
سلام وقت بخیر
ببخشید قالب سایت اگر Child باشه دوتا فایل Function.php داریم، یکی داخل پوسته مادر یکی هم داخل پوسته Child باید در کدومش قرار بدیم که با بروزرسانی قالب، این کد حذف نشه؟؟
هر کاری میکنم و به هر طریقی که فایل را در Functions.php قرار میدم به ارور بر میخورم:
Fatal error: Cannot redeclare allow_contributor_uploads() (previously declared in D:\laragon\www\te\wp-content\themes\twentytwentyone\functions.php:15) in D:\laragon\www\te\wp-content\themes\twentytwentyone\functions.php on line 24
لطفا راهنمایی کنید
https://mihanwp.com/fatal-error/ این آموزش رو مشاهد کنید
عالی بود ممنونم، از طریق فایل منجر انجام دادم با خود ویرایشگر ورد پرس نشد
ولی به صورت کامل دسترسی آپلود داده شد به نقش مشاارکت کننده
سلام
لطفا یک کدی را بدید که در کنار امکان ایجاد آپلود کردن عکس توسط مشارکت کننده، امکان اینکه مشارکت ها بتوانند به دیدگاه ها پاسخ دهند وجود داشته باشه.
با تشکر
درود برای پاسخ به دیدگاه ها باید از بخش صفحه مقاله پاسخ دهند. امکان تایید توسط مشارکت کننده وجود نداره مگر با استفاده از user role editor
سلام،
من میخواستم به کاربرای خودم این اجازه رو بدم تا یک سری فایل (زیپ و عکس) رو در یک صفحه مشخص آپلود کنن و بعدش هم با اسم همون فرد در همون صفحه و هم صفحه کاربری خودش نمایش داده بشه این کد برای من این کارو انجام میده؟ ممنون میشم راهنمایی کنین.
سلام با استفاده از افزونه یوزر پرو میتونید اینکار رو انجام بدید
سلام وقت شما بخیر.
توی یه صفحه از سایتم موقع آپلود عکس، فقط عکس افرادی که وارد سایت شدن آپلود میشه.
میشه کدی به من بدین که کاربرانی که ثبت نام نکردند هم بتونند عکس آپلود کنند.
درود.
خیر، باید حتما شناسه کاربری وجود داشته باشد و یا در هنگام ثبت نظرات به طور مثال، باید ایمیل کاربر وارد شود.
چگونه سیستم تشخیص بدهد چه کاربری با چه شناسه ای چه تصویری دارد اگر شناسه ای وجود نداشته باشد در پایگاه داده !