wordpress adminに、シンプルなファイルアップロードフィールドと送信ボタンがあるカスタムページを作成しました。ページを処理できる場所に送信する方法を理解する必要がありますが、処理できません。 Webで何かを見つけます。ファイルを処理できる関数または別のページに移動するために、フォーム上で「アクション」が何である必要があるかを誰かが知っていますか?
ハンターさん、ありがとう。正解は信用できませんでした。
フォームをif(isset($ _ POST ['submit']))でラップしてから、関数を呼び出しました。
このコードスニペットを使用します。
add_action( 'admin_action_wpse10500', 'wpse10500_admin_action' );
function wpse10500_admin_action()
{
// Do your stuff here
wp_redirect( $_SERVER['HTTP_REFERER'] );
exit();
}
add_action( 'admin_menu', 'wpse10500_admin_menu' );
function wpse10500_admin_menu()
{
add_management_page( 'WPSE 10500 Test page', 'WPSE 10500 Test page', 'administrator', 'wpse10500', 'wpse10500_do_page' );
}
function wpse10500_do_page()
{
?>
<form method="POST" action="<?php echo admin_url( 'admin.php' ); ?>">
<input type="hidden" name="action" value="wpse10500" />
<input type="submit" value="Do it!" />
</form>
<?php
}
私はこのようなコードを機能するように変更する必要がありました:
add_action( 'admin_post_wpse10500', 'wpse10500_admin_action' );