Я изучаю возможность обновления этого шаблона ( http://templatic.com/demos/answers/?ptype=ask-a-question ), который позволяет зарегистрированным подписчикам публиковать (вопросы). Я хотел бы добавить возможность загрузить файл и прикрепить его к сообщению.
Я думал об использовании функции загрузки мультимедиа, но я не хочу предоставлять пользователям полный доступ к медиатеке.
Как это могло быть достигнуто?
Вы не найдете много об этом ни в Кодексе, ни в сети. Медиа может показаться довольно темным искусством, но все, что вы ищете, находится в /wp-admin/includes/media.php.
Функция, которую вы ищете, это
media_handle_sideload()
. Вам нужно будет передать его$file_array
, о котором вам придется прочитать.По сути, вы просто убедитесь, что информация о вашем файле соответствует требованиям, передаете ее в эту функцию, и она создает что-то, что во многом похоже на обычную публикацию, и ею можно манипулировать с помощью медиа-инструментов и пользовательских запросов к публикации с
post_type=attachment
аргументом.Ага! Спасибо! Темное искусство заставляет его звучать интригующе.
ПРИМЕЧАНИЕ. Вы имели в виду wp-admin/includes/media.php, а не wp-includes/media.php ?