Saída de shortcode sempre exibida no topo da página

2

minha saída de shortcode não aparecerá onde eu coloquei, mas sim no topo do conteúdo (topo do conteúdo da postagem / página).

E aqui está o meu código

function service_shortcode_index() {
global $content;
$output = include ( TEMPLATEPATH . '/service.php' );
return $output;
}

add_shortcode('service_mid', 'service_shortcode_index');

existem algumas listas HTML regulares com widget em "service.php"

O conteúdo é exibido corretamente, apenas na posição errada.

    
por Nisha_at_Behance 10.10.2012 / 17:41

1 resposta

8

Acho que seu problema é com a instrução $output = include .... . include() retorna verdadeiro ou falso com base no sucesso - não no conteúdo do arquivo incluído. Use o buffer de saída para obter o conteúdo.

function service_shortcode_index() {
    global $content;
    ob_start();
    include ( TEMPLATEPATH . '/service.php' );
    $output = ob_get_clean();
    return $output;
}

add_shortcode('service_mid', 'service_shortcode_index');
    
por Joseph Leedy 10.10.2012 / 17:57

Tags