从输入字段存储数据到数据库,然后检索它


WordPress: Store data from input fields to database and than retrieve it

我的输入字段的名称如下:child1child[2]child[3]等等。用户可以添加任意多的字段,这是由jquery处理的,并在名称的末尾动态添加一个输入字段[n]。

现在我需要将这些数据存储到我工作的WordPress插件数据库中。然后检索这些数据以显示在网站上,当然也会在用户编辑数据的admin页面中添加这些字段。

我知道如何存储一个字段,例如到WordPress中的数据库,它将是这样的:

<?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>

所以我的问题是我如何处理这个数组像子[n]?

或者另一个问题,也许它是更好的只是使用child1child2child3和处理它作为常规输入字段?

你明白我说的动态添加块是什么意思了这是一个jsfiddle链接: http://jsfiddle.net/alexchizhov/LC2K6/

将其存储为JSON或序列化字符串在一个字段中

http://ch1.php.net/manual/en/function.json-encode.php

http://ch1.php.net/manual/en/function.serialize.php