【发布时间】:2014-09-23 07:58:31
【问题描述】:
我的输入字段的名称如下:child1、child[2]、child[3] 等。用户可以根据需要添加任意数量的字段,使用 jquery 处理并动态添加名称末尾带有 [n] 的输入字段。
现在我需要将这些数据存储到我正在使用的 WordPress 插件中的数据库中。然后检索此数据以将其显示在网站上,并在用户编辑数据的管理页面中添加这些字段。
我知道如何在 WordPress 的数据库中存储一个字段,例如 child,它会是这样的:
<?php $child = get_post_meta( $post->ID, 'child', true ); ?>
<?php
function save_child_data( $post_id ) {
// Check if exists
if(! isset($_POST['child'])){return;}
// Sanitize
$child_data = sanitize_text_field( $_POST['child'] );
// Store data
update_post_meta( $post_id, 'child', $child_data);
}
add_action( 'save_post', 'save_child_data' );
?>
<!-- Field in admin -->
<input type="text" name="child" id="child" value="<?php echo esc_attr($child); ?>">
<!-- Front office -->
<div>Child: <?php echo get_post_meta( $post->ID, 'child', true ); ?></div>
所以我的问题是如何像 child[n] 一样处理这个数组?
或者另一个问题,最好只使用 child1、child2、child3 并将其作为常规输入字段处理?
所以你明白我在这里动态添加块的意思是一个 jsfiddle 链接:http://jsfiddle.net/alexchizhov/LC2K6/
【问题讨论】:
-
使用序列化(我建议json)并将其全部存储在一个字段中
标签: php jquery arrays database wordpress