Как создать фотогалерею в дополнительных полях WordPress
Опубликовано: 01.09.2018
function show_my_metaimage_meta_box ( ) {
global $multiupload_fields ; // Обозначим наш массив с полями глобальным
global $post ; // Глобальный $post для получения id создаваемого/редактируемого поста
// Выводим скрытый input, для верификации. Безопасность прежде всего!
Как создать шоткод в Wordpress? Обзор, создание простого шоткода, виды шоткодов
echo '<input type="hidden" name="custom_meta_box_nonce" value="' . wp_create_nonce ( basename ( __FILE__ ) ) . '" />' ;
// Начинаем выводить таблицу с полями через цикл
8. Добавляем галерею на DLE-сайт
echo '<table class="form-table">' ;
foreach ( $multiupload_fields as $field ) {
// Получаем значение если оно есть для этого поля
$meta = get_post_meta ( $post -> ID , $field [ 'id' ] , true ) ;
// Начинаем выводить таблицу
echo '<tr>
<th><label for="' . $field [ 'id' ] . '">' . $field [ 'label' ] . '</label></th>
<td>' ;
switch ( $field [ 'type' ] ) {
case 'multiupload' :
echo '<a class="repeatable-add button" href="#">Добавить поле</a>
<ul id="' . $field [ 'id' ] . '-repeatable" class="custom_repeatable">' ;
$i = 0 ;
if ( $meta ) {
foreach ( $meta as $row ) {
$image = wp_get_attachment_image_src ( $row , 'medium' ) ; $image = $image [ 0 ] ;
if ( empty ( $row ) ) $row = "http://placehold.it/100x100" ;
echo
'<li style="display: inline-block;margin-right: 20px;position:relative;">
<img style="width:100px;" class="custom_preview_image sort hndle" src="' . $row . '" />
<div style="position: absolute;top:0;">
<input name="' . $field [ 'id' ] . '[' . $i . ']" id="' . $field [ 'id' ] . '" type="hidden" class="custom_upload_image" value="' . $row . '" />
<a style="text-decoration: none;" title="Добавить изображение" class="custom_upload_file_button" href="#"><span class="dashicons dashicons-plus"></span></a>
<a style="text-decoration: none;" title="Удалить изображение" class="repeatable-remove" href="#"><span class="dashicons dashicons-no-alt"></span></a>
</div>
</li>' ;
$i ++ ;
}
} else {
echo
'<li style="display: inline-block;margin-right: 20px;position:relative;">
<img style="width:100px;" src="http://placehold.it/100x100" class="custom_preview_image sort hndle" alt="" />
<div style="position: absolute;top:0;">
<span class="dashicons dashicons-menu"></span>
<input name="' . $field [ 'id' ] . '[' . $i . ']" id="' . $field [ 'id' ] . '" type="hidden" class="custom_upload_image" value="" />
<a style="text-decoration: none;" title="Добавить изображение" class="custom_upload_file_button" href="#"><span class="dashicons dashicons-plus"></span></a>
<a style="text-decoration: none;" title="Удалить изображение" class="repeatable-remove" href="#"><span class="dashicons dashicons-no-alt"></span></a>
</div>
</li>' ;
}
echo '</ul>
<span class="description">' . $field [ 'desc' ] . '</span>' ;
break ;
}
echo '</td></tr>' ;
}
echo '</table>' ;
}
Сегодня | Завтра | ||
USD | 32.62 | 32.50 | |
EUR | 39.90 | 39.92 |
Обменник | Переходов |
Wmchanger | 6 |
E-Market | 5 |
WMtoCash.com | 4 |
Str-Money | 3 |
Hot-Change | 3 |
Вы можете получить WMR-бонус в размере 0,01-0,10 WMR на свой кошелек 1 раз в сутки | |
Кошелек
|
|
Код
|
|
Обмен Webmoney |