admin-post.phpで投稿データを送信するカスタムフォームのページがあります。これは数日前にうまく動作するために使用されましたが、現在はその機能を起動していないようです。ここにコードがあります。 私は同じサイトにいくつかの他の同様のフォームを持っていますが、それらのすべてが動作を停止しています。私のfunctions.phpでWordPressのカスタムフォームの投稿admin-post.php経由での作業が中止されました
<form action="<?php echo esc_url(admin_url('admin-post.php')); ?>" method="POST">
<input type="hidden" name="action" value="create_user">
<?php wp_nonce_field('create_user'); ?>
<input type="text" class="form-control" name="first_name" placeholder="First Name" required/>
<input type="text" class="form-control" name="last_name" placeholder="Last Name" required/>
</form>
私は何かをエコーし、スクリプトを実行死ん試してみました
function create_user() {
$retrieved_nonce = $_POST['_wpnonce'];
if (!wp_verify_nonce($retrieved_nonce, 'create_user')){
$status = 'failed';
}else{
// My Code goes here
}
}
add_action('admin_post_create_user', 'estudy_create_user');
これは単なる機能がトリガされているか否かをチェックする必要がありますが、あまりにも動作していません。
右方向へのすべてのヘルプはまあ、私は管理者-post.phpが(明らかにされている必要があります)管理者側のフォームのために使用されていることが分かったいくつかの掘削後に:)
admin_postはログインしているユーザーにのみ動作します。このガイドに従ってください:https://www.sitepoint.com/handling-post-requests-the-wordpressway/ –
@TomBrouckeまあ、私はログインしており、カスタムロールが割り当てられています。これは、この役割でうまく動作していました。 –