Как быстро управлять загрузкой пользовательских медиафайлов в WordPress

Опубликовано: 2023-04-10

Давайте начнем наше руководство по управлению загрузками медиафайлов пользователей с понимания того, что это такое.

Поскольку WordPress стал одной из самых популярных систем управления контентом для веб-сайтов, становится все более важным обеспечить пользователям приятный и эффективный опыт управления своим контентом. Одной из ключевых особенностей WordPress является его медиатека, которая позволяет пользователям загружать и хранить изображения, видео и другие файлы для использования в своем контенте.

Когда у вас есть веб-сайт с несколькими авторами, может быть сложно управлять медиаданными каждого автора. Предоставление авторам доступа ко всем материалам мультимедиа может привести к путанице и ошибкам, особенно когда речь идет о конфиденциальной информации, которая не должна быть видна всем пользователям.

Чтобы решить эту проблему, WordPress предоставляет возможность разрешить пользователям организовывать загрузку мультимедиа. Включив эту опцию, пользователи могут получать доступ и управлять только своими собственными загрузками в медиатеке, что, в свою очередь, скрывает информацию только для подписчиков и предотвращает случайное удаление авторами контента другого пользователя.

В этом руководстве мы проведем вас через шаги, необходимые для включения функции, которая помогает организовать загрузку пользовательских медиафайлов в WordPress. После включения ваши пользователи смогут легко и без проблем управлять загрузкой пользовательских медиафайлов, а управление контентом вашего веб-сайта будет работать более эффективно.

Зачем ограничивать доступ авторов к загрузкам пользовательских медиафайлов?

Если у вас есть блог WordPress с несколькими авторами, пользователи могут загружать различные фотографии. Это может затруднить поиск подходящего изображения для автора или он может случайно удалить или изменить медиафайл другого человека.

Это может привести к целому ряду проблем, в том числе к снижению производительности, увеличению нагрузки на администраторов сайта и редакторов, а также к затруднениям при редактировании.

Этот неограниченный доступ потенциально может представлять угрозу конфиденциальности. Например, если вы разрабатываете новый продукт или концепцию, другие авторы могут просматривать конфиденциальные фотографии в медиатеке до того, как вы сделаете публичное объявление.

Если у вас есть членский сайт WordPress, участники и подписчики могут иметь доступ к премиальным медиафайлам, которых у них быть не должно. Например, если вы продаете онлайн-курсы, участник может использовать доступ к своей медиатеке для получения премиальных PDF-файлов и других материалов курса без приобретения членства.

Тем не менее, давайте посмотрим, как ограничить, кто может видеть загрузку мультимедиа в вашей области администрирования WordPress. Просто нажмите на быстрые ссылки ниже, чтобы перейти к технике, которую вы хотите использовать.

Метод 1: использование плагина для организации загрузки пользовательских медиафайлов (быстро и просто)

Плагин Frontier Limit Access — это самый простой способ ограничить доступ к загружаемым медиафайлам.

Этот бесплатный плагин определяет, есть ли у пользователя разрешение на редактирование сообщений других пользователей, что позволяет ему редактировать сообщения других пользователей.

По умолчанию этот доступ есть у всех с должностью администратора или редактора сайта. Если вы хотите изменить это, вы можете сделать это, добавив или удалив возможности ролей пользователей в WordPress.

Если у пользователя нет этого разрешения, он не сможет просматривать файлы другого пользователя в медиатеке WordPress после активации этого плагина. Это позволяет вам управлять медиафайлами, загруженными пользователями, не ограничивая доступ администраторов и редакторов.

Этот плагин работает сразу и не требует настройки, поэтому вы можете просто установить и активировать плагин Frontier Limit Access.

Метод 2: использование кодирования для организации загрузки мультимедиа (расширенный)

Другой альтернативой является использование кода для ограничения доступа к файлам в медиатеке. Этот метод требует, чтобы вы добавили фрагмент кода в свой блог или веб-сайт WordPress, поэтому он не подходит для начинающих. Однако вам не нужно будет устанавливать отдельный плагин для организации загрузки ваших медиафайлов.

Часто можно найти руководства с инструкциями по добавлению пользовательского кода в вашу тему WordPress. Однако это не рекомендуется, потому что ошибки и опечатки в вашем коде могут привести к частым ошибкам WordPress или даже полностью испортить ваш сайт.

Вот почему мы предлагаем WPcode.

WPCode — лучший плагин для фрагментов кода, его используют более 1 миллиона сайтов WordPress. Это упрощает добавление пользовательского кода в WordPress без редактирования файла functions.php.

Мы добавим в этот метод код, который проверяет, есть ли у пользователя доступ к редактированию чужих сообщений. Если у них нет этого разрешения, приведенный ниже код не позволит им просматривать чужие файлы в медиатеке WordPress.

Первый шаг — установить и активировать бесплатный плагин WPCode.

После активации перейдите к Code Snippets »Add Snippet .

managing User Media Uploads with wpcode

Наведите курсор на «Добавить свой собственный код», чтобы начать.

Когда он появится, нажмите кнопку «Использовать фрагмент».

using snippet

Для начала присвойте пользовательскому фрагменту кода заголовок. Это может быть что угодно, что помогает идентифицировать фрагмент на панели инструментов WordPress.

Затем в поле «Тип кода» выберите «Фрагмент PHP».

restrict media access

Поместите следующий фрагмент кода строки в область предварительного просмотра кода:

add_filter( 'ajax_query_attachments_args', 'user_show_attachments'

);

functionuser_show_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;

}

Просто прокрутите вниз до раздела «Вставка». WPCode позволяет добавлять код в несколько мест, например, после каждого сообщения, только в интерфейсе или только у администратора.

Поскольку мы хотим использовать пользовательский код PHP на нашем веб-сайте WordPress, выберите «Автоматическая вставка», если он еще не выбран. Затем в раскрывающемся меню «Местоположение» выберите «Бегать везде».

auto insert

После этого перейдите к верхней части экрана и нажмите переключатель «Неактивный», чтобы сделать его «Активным».

Наконец, нажмите «Сохранить фрагмент», чтобы опубликовать фрагмент PHP.

create custom snippet

Теперь пользователи смогут получить доступ только к файлам, которые они размещают в медиатеке WordPress.

Подведение итогов

Внедрив эту функцию, вы можете дать своим пользователям больший контроль над своим контентом, а также гарантировать, что все останется организованным в вашей медиатеке. С помощью нескольких простых шагов вы можете легко разрешить своим пользователям упорядочивать свои собственные загрузки мультимедиа в WordPress, сохраняя при этом целостность вашего веб-сайта.