Downvotes como você nem sequer tentar ler os docs on get_page(). Foi preterido há muito tempo. Além disso, há uma quantidade ilimitada de recursos no local sobre este assunto, até mesmo o Google tem toneladas de informação sobre este
Pieter Goosen
Respostas:
17
Você pode fazer isso de várias maneiras. A seguir, são duas melhores maneiras.
$post_id =5// example post id
$post_content = get_post($post_id);
$content = $post_content->post_content;
echo do_shortcode( $content );//executing shortcodes
Após a sugestão de Pieter Goosen em apply_filters.
Você pode usar apply_filtersse quiser que o conteúdo seja filtrado por outros plugins. Portanto, isso elimina a necessidade de usardo_shortcode
Exemplo
$post_id =5// example post id
$post_content = get_post($post_id);
$content = $post_content->post_content;
echo apply_filters('the_content',$content);//no need to use do_shortcode, but content might be filtered by other plugins.
Se você não quiser permitir que outros plugins filtrem esse conteúdo e precise da função de código de acesso, siga em frente do_shortcode.
Se você também não deseja código curto, apenas brinque com o post_content.
Maravilha apenas porque você está usandodo_shortcode
Pieter Goosen
Oi obrigado por perguntar. @PieterGoosen Como estamos recebendo o raw contentpost. Qualquer código abreviado incorporado à postagem não será processado. assim que nós estamos fazendo isso por nós mesmos comdo_shortcode
WPTC-Troop
2
Uma maneira melhor seria usar apply_filters( 'the_content', $content );, dessa maneira, todos os filtros aplicados ao the_content()like wpautope o manipulador de códigos curtos $content. ;-). Observe o pluralfilters
Pieter Goosen
11
Sim, usar em apply_filtersvez de do_shortcodefazer sentido. Mas o uso apply_filteré puramente baseado em sua decisão ambiental. Deixe-me atualizar minha resposta também. Muito obrigado pelo seu carinho na comunidade @PieterGoosen
WPTC-Troop
0
Vou deixar aqui outra maneira feia e hacky que você pode achar útil às vezes. Obviamente, os métodos que usam chamadas de API são sempre preferidos (get_post (), get_the_content (), ...).
global $wpdb;
$post_id =123;// fill in your desired post ID
$post_content_raw = $wpdb->get_var(
$wpdb->prepare("select post_content from $wpdb->posts where ID = %d",
$post_id));
$id =23;// add the ID of the page where the zero is
$p = get_page($id);
$t = $p->post_title;
echo '<h3>'.apply_filters('post_title', $t).'</h3>';// the title is here wrapped with h3
echo apply_filters('the_content', $p->post_content);
get_page()
. Foi preterido há muito tempo. Além disso, há uma quantidade ilimitada de recursos no local sobre este assunto, até mesmo o Google tem toneladas de informação sobre esteRespostas:
Você pode fazer isso de várias maneiras. A seguir, são duas melhores maneiras.
Outro método
Após a sugestão de Pieter Goosen em
apply_filters
.Você pode usar
apply_filters
se quiser que o conteúdo seja filtrado por outros plugins. Portanto, isso elimina a necessidade de usardo_shortcode
Exemplo
Se você não quiser permitir que outros plugins filtrem esse conteúdo e precise da função de código de acesso, siga em frente
do_shortcode
.Se você também não deseja código curto, apenas brinque com o
post_content
.fonte
do_shortcode
raw content
post. Qualquer código abreviado incorporado à postagem não será processado. assim que nós estamos fazendo isso por nós mesmos comdo_shortcode
apply_filters( 'the_content', $content );
, dessa maneira, todos os filtros aplicados aothe_content()
likewpautop
e o manipulador de códigos curtos$content
. ;-). Observe o pluralfilters
apply_filters
vez dedo_shortcode
fazer sentido. Mas o usoapply_filter
é puramente baseado em sua decisão ambiental. Deixe-me atualizar minha resposta também. Muito obrigado pelo seu carinho na comunidade @PieterGoosenVou deixar aqui outra maneira feia e hacky que você pode achar útil às vezes. Obviamente, os métodos que usam chamadas de API são sempre preferidos (get_post (), get_the_content (), ...).
fonte
fonte
Usando
get_page('ID')
.fonte
get_page()
é depreciado