2017-03-10 1 views
1

Wordpress 플러그인을 개발 중이며 내 단축키 내에서 액션을 사용하여 $ _POST 데이터를 가져 오는 데 문제가 있습니다. 구문 분석하는 양식은 내 단축 코드를 추가 한 페이지에 있습니다.액션 후크 내 Wordpress 플러그인 단축 코드

는 여기에 내가있어 무엇 :

function wpd_post_parse() { 

    $string = 'wp hook: ' . var_dump($_POST) . "\r\n"; 

    //$string = 'wp hook: first name: ' . $_POST["first_name"] . "\r\n"; 
    //$string .= 'wp hook: last name: ' . $_POST["last_name"] . "\r\n"; 
    //$string .= 'wp hook: email: ' . $_POST["email"] . "\r\n"; 

    $fileName = dirname(__FILE__) . '/log.txt';  

    file_put_contents($fileName, $string, FILE_APPEND | LOCK_EX); 
    //file_put_contents($fileName, $string, FILE_APPEND); 

    /* 
    if (!empty($_POST)){ 

     $string = 'wp hook: ' . var_dump($_POST) . "\r\n"; 

     $fileName = dirname(__FILE__) . '/log.txt';  

     file_put_contents($fileName, $string, FILE_APPEND | LOCK_EX); 
     //file_put_contents($fileName, $string, FILE_APPEND); 

    }else{ 

     $string = 'wp hook: POST empty' . "\r\n"; 

     $fileName = dirname(__FILE__) . '/log.txt';  

     file_put_contents($fileName, $string, FILE_APPEND | LOCK_EX); 
    } 
    */ 

} 

function mgc_init(){ 

    $htmlStr = 'Hello World!' . "\r\n"; 

    $fileName = dirname(__FILE__) . '/log.txt'; 

    file_put_contents($fileName, $htmlStr, FILE_APPEND | LOCK_EX); 
    //file_put_contents($fileName, $htmlStr, FILE_APPEND); 

    //Add hook to capture $_POST data 
    add_action('parse_request', 'wpd_post_parse'); 

} 

add_shortcode('mgc','mgc_init'); //put this shortcode [mgc] on page in Wordpress 

UPDATE : 당신의 도움에 대한 감사합니다 지금까지. 양식 제출시 $ _POST 값 (이름)을 얻으려고하는데 값이 $ _POST [ "first_name"] 안에 없습니다. 여기에 코드가 지금의 모습이다 ": 이름 WP 후크"파일에 인쇄 가도록 모든입니다

//Capture the $_POST data 
function wpd_post_parse() { 

    //$string = 'wp hook: ' . var_dump($_POST) . "\r\n"; 

    $string = 'wp hook: first name: ' . $_POST["first_name"] . "\r\n"; 
    //$string .= 'wp hook: last name: ' . $_POST["last_name"] . "\r\n"; 
    //$string .= 'wp hook: email: ' . $_POST["email"] . "\r\n"; 

    $fileName = dirname(__FILE__) . '/log.txt';  

    file_put_contents($fileName, $string, FILE_APPEND | LOCK_EX); 
    //file_put_contents($fileName, $string, FILE_APPEND); 

    /* 
if (!empty($_POST)){ 

    $string = 'wp hook: ' . var_dump($_POST) . "\r\n"; 

    $fileName = dirname(__FILE__) . '/log.txt';  

    file_put_contents($fileName, $string, FILE_APPEND | LOCK_EX); 
    //file_put_contents($fileName, $string, FILE_APPEND); 

}else{ 

    $string = 'wp hook: POST empty' . "\r\n"; 

    $fileName = dirname(__FILE__) . '/log.txt';  

    file_put_contents($fileName, $string, FILE_APPEND | LOCK_EX); 
} 
*/ 

//exit; 
} 

function mgc_init(){ 

    $htmlStr = 'Hello World!' . "\r\n"; 

    $fileName = dirname(__FILE__) . '/log.txt'; 

    file_put_contents($fileName, $htmlStr, FILE_APPEND | LOCK_EX); 
    //file_put_contents($fileName, $htmlStr, FILE_APPEND); 

    do_action('wpd_post_parse'); 

} 

add_shortcode('mgc','mgc_init'); //put this shortcode [mgc] on thedinnerdaily.com/subscribe/ page in Wordpress 

add_action('parse_request', 'wpd_post_parse'); 

답변

0

이 방법은 작동하지 않았다 그것은 워드 프레스에 사이트 전체 문제를 일으켰습니다. 등록 페이지에서 완성 된 양식의 리디렉션 페이지로 코드를 옮겼습니다. 거기서부터 내가 찾고 있던 양식 데이터를 포착 할 수있었습니다.

관련 문제