私のWordpress Adminでは、Settings APIを使ってテーマオプションを設定しています。ページが更新されないように、Ajaxを使用してテーマオプションフォームを保存しようとしています。私が追加する必要があった唯一のものはこのjQueryコードでした:
$("#cgform").submit(function() {
var form_data = $('#cgform input').serializeArray();
$.post( 'options.php', form_data ).error(function() {
alert('error');
}).success( function() {
alert('success');
});
return false;
});
これを行っても安全かどうか知りたいですか。私は設定apiが一回だけのフィールドの世話をすることを知っています、しかしこれをすることが安全で安全であるかどうか確かめたいです。誰かがAjaxで設定APIを使用するための「ベストプラクティス」を案内してくれると嬉しいです。
WordPressはSettings APIと一緒にAjax送信をネイティブには使用しないので、それに対する実際のベストプラクティスはありません。 scbFrameworkにそのようなオプションがあるのを覚えていますが、削除されました。
本質的にそのような送信にはそれほど安全でないものは何もありません。送信方法にかかわらずフォームデータを信頼できないものとして扱い、適切にサニタイズしてPHPバックエンドで検証する必要があります。セキュリティのためにオン)。