Публикация в группе: Полезное для WordPress

Добавлено в закладки: 0

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

Для начала нам понадобиться обычная форма отправляющая наши данные в файл обработчик. Так как, кроме обычного текста, наша форма должна отправлять еще и файлы картинок, то добавим внутрь тега form дополнительный атрибут enctype="multipart/form-data" и сразу добавим одно поле для загрузки файла с атрибутом name="image_file[]", это будет нужно для формирования массива с данными о загружаемых изображениях.

На данный момент в форме мы имеем только одно поле для загрузки файла, но нам нужно столько сколько потребуется, поэтому придется прибегнуть к помощи jQuery. Рассмотрим такой код:

Логика работы кода следующая. В данном коде мы отлавливаем нажатие на элемент с идентификаторов id="add", в нашем случае это слово "+ Еще". Так как я установил ограничение на количество загружаемых файлов до 5шт., то считаем количество нажатий и проверяем не превысили ли мы максимальное количество. При каждом нажатии мы добавляем в контейнер с классом '.inputs' еще одно дополнительное поле для загрузки файла. Если мы достигли предела по количеству выводимых полей для загрузки, то удаляем кнопку на добавление.

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

Я опишу на примере публикации записи в плагине. Нам требуется опубликовать запись и прикрепить к ней те картинки которые были добавлены через поля загрузки в форме публикации.

Я прокомментировал ключевые места в коде. По сути это упрощенный рабочий код.
Устанавливать обвесы будете по своему усмотрению)

70

Автор публикации

не в сети 5 часов

Андрей CS

10k

пока занят

Комментарии: 1780Публикации: 411Регистрация: 30-11--0001Продаж/Покупок: 16725/114