Intereting Posts
Удалить родителей из постоянной иерархической таксономии register_sidebar_widget устарел с версии 2.8! Вместо этого используйте wp_register_sidebar_widget () WP AJAX API с JS-файлом Добавить категории товаров wooCommerce в качестве меню боковой панели с коротким кодом на главной странице скрыть или отключить кнопку в менеджере заданий wp Ограничить контрольный список текущим пользователем Как я могу определить, какие файлы (ы) изменить из просмотра исходного кода Объединить плагины wordpress Запросить все опубликованные сообщения и вложение с определенным типом mime Скрыть активные темы в многосайтовых субдоменах Исключить встроенные URL-адреса из Appearing in Excerpt Доступ к общим настройкам через файлы wordpress используя update_user_meta для ранжирования пользователей Правила флеш-перезаписи при создании нового сайта в сети Не удалось активировать импортер wordpress после его установки

Ограничить медиабиблиотеку в заданную папку

Я создал плагин, который использует медиабиблиотеку, чтобы пользователи могли загружать файлы в конкретный каталог – с upload_dir фильтра upload_dir .

Я хотел бы знать, есть ли способ (например, фильтр), который я могу использовать, чтобы ограничить медиабиблиотеку отображением только файлов, содержащихся в моей пользовательской папке?

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

Solutions Collecting From Web of "Ограничить медиабиблиотеку в заданную папку"

Решение, которое работает для меня, – это добавить предложение к запросу WordPress, когда отображается медиа-библиотека.

Из просмотра моей базы данных WordPress я заметил, что полный путь к wp_posts.post_type = 'attachment' хранится в столбце wp_posts.guid .

 add_filter('posts_where', 'limitMediaLibraryItems_56456', 10, 2 ); function limitMediaLibraryItems_56456($where, &$wp_query) { global $pagenow, $wpdb; // Do not modify $where for non-media library requests if ($pagenow !== 'media-upload.php') { return $where; } $where .= " AND {$wpdb->posts}.guid LIKE '%my-path-segment%'"; return $where; }