0

functions.php で Wordpress カスタム フィールドを作成しました。私のコードは正常に動作し、いくつかの入力フィールドといくつかのチェックボックスがあります。

問題は、投稿を保存するときに、フォーム内にコンテンツを配置しなくても、これらの行が DB に作成されることです。フィールドの内容が保存されていない場合、ある種のphpチェックを行い、DBに行が作成されないようにしたいと思います。

いくつかの方法を試しましたが、ほとんどの場合、たとえばチェックボックスの動作が正しくありません。

完全なコードはこちら: http://pastebin.com/embed_js.php?i=Vvnseiep

この件についてご協力いただければ幸いです。私はあまり経験がありません。

ありがとう!

4

2 に答える 2

0

すべてのチェックボックスに同じ名前を付けます ( name="meta_box_check[]")。それらはまだ異なる ID を持っている必要があります。フォームが投稿されると、チェックインされた値の配列が与えられます$_POST['meta_box_check']。その後、配列が空かどうかを確認できます。チェックボックスのデータを JSON データとして保存することもできます。これは必ずしも良い方法ではありませんが、1 つのデータ行のみを使用してすべてのチェックボックスの値を保存します。

<?php
if(!empty($_POST['meta_box_check']))
{ 
   //process your data and save it
   update_post_meta($post_id, 'meta_features_checklist', json_encode($_POST['meta_box_check']));
}
?>

これは基本的な例であり、保存する前にデータの検証を行ってください。

于 2012-09-01T12:55:58.267 に答える
0

ここで検証部分が登場します。Javascriptを使用してクライアント環境自体で入力を検証し、データベースにアクセスできるようにできないのはなぜですか。

于 2012-08-31T10:38:31.993 に答える