Por que o WordPress adiciona 0 (zero) a uma resposta do Ajax?

13

A menos que eu finalize a função de processamento do Ajax por exit() ou die() , a função Ajax recebe a saída desejada e correta, mas seguindo por 0 .

Alguma ideia de por que isso está acontecendo?

Isso tem que ser assim ou pode ser corrigido?

add_action('wp_ajax_get_homepage', 'get_homepage');
add_action('wp_ajax_nopriv_get_homepage', 'get_homepage');

function get_homepage(){
    echo "get_homepage ->";
    exit();
}

Eu li em AJAX em Plugins , mas por que isso é necessário?

    
por Radek 04.10.2013 / 13:58

1 resposta

28

A resposta padrão de admin-ajax.php é

die( '0' );

... adicionando seu próprio exit() ou die() depois de retornar o conteúdo desejado, também impede que a resposta padrão de admin-ajax.php seja retornada.

Isso também geralmente significa que sua chamada ajax foi bem-sucedida.

Por fim, para responder à sua pergunta, é para funcionar dessa maneira. O que você está fazendo, saindo depois de retornar seu conteúdo, é a coisa certa a fazer.

    
por userabuser 04.10.2013 / 14:43