2017-09-29 2 views
-1

Wordpress에서 POST 요청을 처리하는 데 두 가지 갈고리가있는 것 같습니다. 첫 번째는 admin-post 후크입니다. 두 번째는 admin_action_{$_REQUEST[‘action’]} 후크입니다.Wordpress POST 요청에 사용할 후크가 무엇입니까?

다른 경우에 적합합니까? 하나가 다른 것보다 선호됩니까?

+0

이 질문은 좀 이상합니다. WordPress가 HTTP POST 요청을 처리하는 방법은 여러 가지가 있습니다. 당신이 참조하는 두 가지 훅은 자주 사용되지 않는 WordPress의 진입 점에서부터 AFAIK입니다. WordPress가 POST 요청을 처리하는 데 사용하는 유일한 두 가지 고리 인 이유가 궁금 할 수도 있습니다. – user8262086

+0

Google 검색에서 찾은 두 가지 제안입니다. Wort 언급은 플러그인에 대해 사용자 정의 된 POST 조치를 처리하기위한 후크를 찾는 것이다. 예를 들어 설정 페이지에 설정을 저장하거나 (설정 API를 사용하지 마십시오) 맞춤 관리 페이지에서 데이터를 삭제하십시오. –

+0

WordPress의 모든 POST 요청을 참조하는 것 같아서 질문을 오해했습니다. 플러그인의 사용자 정의 POST 요청의 경우 해당 후크를 사용할 수 있지만 AJAX API를 사용하는 것이 더 일반적이라고 생각합니다. – user8262086

답변

1

'admin_post_'. $ _REQUEST [ '액션'] 액션 고리는, 예를 들어 폼 처리

<form action="<?php echo esc_url(admin_url('admin-post.php')); ?>" method="post"> 
    <input type="hidden" name="action" value="your_action"> 
    ... 
</form> 

'admin_action_'를 사용한다. $ _REQUEST는 [ '행동'] 액션 후크

'<a href="' . admin_url("admin.php?action=your_action&...") . '">...</a> 
'<a href="' . admin_url("edit.php?action=your_action&...") . '">...</a> 
'<a href="' . admin_url("post.php?action=your_action&...") . '">...</a> 

나는이 중 하나를 생각하지 않는, 예를 들어 특정 관리자의 URL에 대한 작업 (WP - 관리자/admin.php을 포함하는 PHP 파일)을 처리하는 데 사용된다 후크가 자주 사용됩니다. 적어도 내가 사용하고있는 플러그인에는 없습니다. 일반적으로 액션은 나중에 호출 된 PHP 파일에 의해 처리됩니다. wp-admin/edit.php, wp-admin.post.php, ...

관련 문제