Я пытаюсь создать мета-окно для темы Wordpress, где я могу добавить страны. Каждая страна имеет набор полей, таких как имя, население, флаг (изображение). Мне удалось создать метабокс для страны SINGLE, используя этот учебник: http://wp.tutsplus.com/tutorials/three-practical-uses-for-custom-meta-boxes/. Любой из трех примеров работает, но можно ли добавить больше стран?wordpress create meta box с несколькими записями
ответ
Это отвечает о том, как сохранить многомерный массив значения, а некоторые, как решает проблему в каком-то уровне
Вы должны использовать массивы.
Я делаю это во многих реализациях в своих сценариях. Давайте посмотрим, как:
HTML/PHP Во-первых:
<?php
$countries = get_post_meta($post->ID, 'countries' true);
?>
<div class="EntriesContainer" data-count="<?php echo count($countries); ?>" id="itemsList">
<?php
$cnt = 0;
foreach($countries as $country)
{
++$cnt;
?>
<div class="newItem">
<input name="countries[<?php echo $cnt; ?>][name]" type="text" />' +
<input name="countries[<?php echo $cnt; ?>][population]" type="text" />
<input name="countries[<?php echo $cnt; ?>][flag_url]" type="text" />
</div>
<?php
}
?>
</div>
<input type="button value="Add new Country" class="button" id="addNewItem" />
JavaScript:
jQuery(document).ready(
function($)
{
$('#addNewItem').on(
'click.myThemeOrPluginName',
function(e)
{
e.preventDefault();
var ttlItems = parseInt($('#itemsList').attr('data-count'));
++ttlItems;
var $newItem = '<div class="newItem>' +
'<input name="countries[' + ttlItems + '][name]" type="text" />' +
'<input name="countries[' + ttlItems + '][population]" type="text" />' +
'<input name="countries[' + ttlItems + '][flag_url]" type="text" />' +
'</div>';
$('#itemsList').append($newItem);
}
);
}
);
Тогда в save_post
действия крючковатым функции вы получите через $_POST
массив, который будет выглядеть например:
array(
'countries' => array(
[1] => array(
name => 'Greece'
population => '11000000',
flag_url => '../el_GR.png'
)
[2] => array(
name => 'Italy'
population => '????',
flag_url => '../it_IT.png'
)
)
)
Это общая идея. Настройте на основе ваших требований :)
Вы должны учитывать индивидуальные типы сообщений (http://codex.wordpress.org/Post_Types).
В этом случае вы можете создать новый тип: страна, которая содержит заголовок сообщения (название страны), и вы могли бы добавить 2 настраиваемых поля: совокупность (текстовое поле) и флаг (поле изображения).
Тогда вы можете добавить столько стран, сколько хотите, так же как и сообщения.
- 1. Wordpress Meta box с ajax
- 2. Wordpress change publish meta-box
- 3. jquery on wordpress meta box поля ввода
- 4. Wordpress Meta Box переписывает страницу Slug
- 5. Wordpress custom meta box Загрузка нескольких изображений
- 6. wordpress meta box \ custom fields validation
- 7. Результаты поиска включают WordPress Meta Box
- 8. Wordpress Custom Meta Box Не отображается
- 9. WordPress Meta Box Plugin Отображение клонированного текста
- 10. MySQL CREATE результат функции с несколькими записями дает ошибку # 1172
- 11. Добавить редактор wysiwyg в WordPress textarea Meta Box
- 12. create Box в HTML
- 13. Meta box размер поля изображения
- 14. Wordpress: My Custom Meta Box сохраняет в разделе «Пользовательские поля»
- 15. используя .dup с несколькими записями
- 16. Как сохранить значение meta box?
- 17. Рекомендуемое изображение meta box отсутствует для страниц в wordpress
- 18. Create Zooming Box
- 19. Добавить wordpress meta box для всех типов сообщений
- 20. Wordpress custom meta box loop уничтожает сообщение slug
- 21. tinyMCE в WordPress Meta Box - как включить кухонную раковину?
- 22. «if meta box empty» скрыть его от переднего конца - WordPress
- 23. Wordpress meta-box - Как добавить мета-окно на страницы?
- 24. Wordpress Meta Data
- 25. Genesis и Custom Meta Box
- 26. WPF create Search Box
- 27. dangerouslySetInnerHTML с несколькими записями html
- 28. Листинг с несколькими различными записями
- 29. Meta Box Не отображается в Admin Страница
- 30. Временная манипуляция несколькими записями
Это тоже хорошая практика! –
Очень хороший совет! благодаря –