Я написал плагин, в котором у вас есть маленький значок чата в правом нижнем углу, однако я хочу, чтобы пользователь мог выбрать изображение в качестве значка из Media Library
. Как я могу сделать это с помощью Wordpress API? Изображение является настройкой в плагине (может быть изменено только администратором)
media-library
Томас
источник
источник
wp.media
чтобы разрешить пользовательские загрузки, выбрать медиа-файл для этого требования. У WPSE есть много примеров, но, возможно, эта статья поможет вам jeroensormani.com/… Также вы найдете примеры github, особенно из ocean90 - github.com/ocean90/media-modal-demoОтветы:
Вы должны использовать,
wp.media
чтобы использовать диалог WordPress Media Manager.Во-первых, вам нужно поставить в очередь скрипты:
Ваш HTML может выглядеть примерно так (обратите внимание, что мой код использует идентификатор вложения в настройке плагина вместо URL-адреса изображения, как вы сделали в своем ответе, я думаю, что это намного лучше. Например, использование идентификатора позволяет получать изображения разных размеров, когда вы нужно их):
myscript.js
И действие Ajax для обновления предварительного просмотра изображения:
PD: это быстрый пример, написанный здесь на основе другого ответа . Не проверено, поскольку вы не предоставили достаточно информации о точном контексте, в котором будет использоваться код, или о точных проблемах, с которыми вы столкнулись.
источник
Использовано
wordpress-settings-api-class
Тареком Хасаном, URL: https://github.com/tareq1988/wordpress-settings-api-classclass.settings-api.php
в свой плагин. (этот файл https://github.com/tareq1988/wordpress-settings-api-class/blob/master/src/class.settings-api.php )'type' => 'file'
как вы хотите добавить медиа-загрузчик. (См. Этот пример для лучшего понимания https://github.com/tareq1988/wordpress-settings-api-class/blob/master/example/procedural-example.php )источник
wp.media
контроль .Поскольку вы хотите, чтобы значок был разным для каждого пользователя, вам нужно будет сохранить изображение в профиле пользователя. Это означает, что вам нужно добавить дополнительное поле пользователя:
Теперь это дает вам возможность загрузить файл с компьютера пользователя. Если вы хотите, чтобы пользователь выбирал файл из существующих изображений, все усложняется, потому что тогда вам нужно вызвать медиатеку вместо загрузки файла по умолчанию. Стивен Слэк написал отличный пост о том, как это сделать, и я не хочу брать на себя ответственность, вставив сюда свой код.
В вашем шаблоне вы должны различать три возможности: пользователь не вошел в систему, пользователь вошел в систему, но не имеет значка, пользователь вошел в систему и имеет значок. Грубо говоря, включите это:
источник
Полный код с плагином вы можете найти по этому адресу: http://blog.adlivetech.com/use-wordpress-media-upload-custom-code/
Легко использовать, просто скопируйте и вставьте код в нужное вам место
источник
Я использовал это решение (без использования самой библиотеки мультимедиа):
Использование image-picker-lib внутри модального окна, которое устанавливает значение скрытого ввода, которое публикуется в опциях. Получив все мультимедиа и отобразив его как параметры, я могу позволить пользователю выбрать изображение.
HTML
PHP / HTML
JS
источник
wp.media
контроль .