Не удалось найти хороший заголовок для этого.
У меня есть сборка в WordPress, где у меня есть несколько загрузок изображений, используя встроенный медиа-загрузчик WordPress. Как это работает, после загрузки и выбора "вставки" jQuery вставляет путь изображения в текстовое поле, которое содержит идентификатор. После сохранения текстовое поле сохраняется в таблице опций.
Работает отлично, если у вас есть только одно поле для загрузки. После добавления дополнительных загрузок каждое поле для загрузки будет сохранено с тем же путем. Просто нужна каждая кнопка загрузки, чтобы вставить только значение связанного с ней текстового поля.
Я пытался использовать .each, но не смог заставить его работать правильно. Также попробовал использовать .attr('id') для вставки значения, но ничего не делал.
Вот мой jQuery и разметка:
jQuery('.upload-button').click(function() {
formfield = jQuery('.upload').attr('name');
tb_show('', 'media-upload.php?type=image&TB_iframe=true');
return false;
});
window.send_to_editor = function(html) {
imgurl = jQuery('img',html).attr('src');
jQuery('.upload').val(imgurl);
tb_remove();
};
<div class="upload_field"
<input type="text" name="upload_one" id="upload_one" class="upload" value="" />
<input type="button" class="upload-button" value="Upload Image" />
</div>
<div class="upload_field"
<input type="text" name="upload_two" id="upload_two" class="upload" value="" />
<input type="button" class="upload-button" value="Upload Image" />
</div>
<div class="upload_field"
<input type="text" name="upload_three" id="upload_three" class="upload" value="" />
<input type="button" class="upload-button" value="Upload Image" />
</div>
Для получения дополнительной информации, вот настройка загрузчика, которую я использую: http://www.webmaster-source.com/2010/01/08/using-the-wordpress-uploader-in-your-plugin-or-theme/
Любая помощь, как всегда, очень ценится.