Obtener contenido de una página y mostrarlo en otra página

10 nov 2011, 03:28:24
Vistas: 71.8K
Votos: 11

He estado googleando, leyendo, probando y fallando.

Soy bastante nuevo en PHP, ¡así que no esperen demasiado! :)

Estoy trabajando en un nuevo diseño y quiero mostrar el contenido de la página "about" en mi página de inicio, que es dinámica. He estado investigando sobre the_content, pero hasta ahora no he tenido suerte.

<?php
   $id=about; // ID de la página
   $post = get_page($id=);
   $content = apply_filters('the_content', $post->post_content);
   echo $content;
?>

el ID de la página es "about", si eso ayuda en algo.

¡Por favor, respondan! :)

0
Todas las respuestas a la pregunta 4
2
11

Primero: El ID de una publicación o página siempre es un número entero. "about" (acerca de) puede ser el título de tu página, el slug o ambos.

Incluir lo siguiente en la plantilla de página de tu "página de inicio" o en la barra lateral combinada con etiquetas condicionales mostrará el contenido de la página "about":

<?php
    // consulta para la página about
    $your_query = new WP_Query( 'pagename=about' );
    // "loop" a través de la consulta (aunque sea solo una página)
    while ( $your_query->have_posts() ) : $your_query->the_post();
        the_content();
    endwhile;
    // restablecer los datos de la publicación (¡importante!)
    wp_reset_postdata();
?>

Edición: Lo anterior funciona, SI tu slug de página es efectivamente "about", de lo contrario ajusta según corresponda.

10 nov 2011 04:00:50
Comentarios

Esto solo muestra el contenido, no el título de la página también. Sin embargo, hacer cosas como the_title() muestra el título de la página de inicio

Chillin' Chillin'
25 abr 2020 01:59:44

No lo hará si se hace dentro del bucle (loop).

Johannes Pille Johannes Pille
25 abr 2020 15:29:55
2

¡El codex es tu amigo!

http://codex.wordpress.org/Function_Reference/get_post

<?php
    $post_id = 7;
    $post = get_post($post_id, ARRAY_A);
    $title = $post['post_title'];
    $content = $post['post_content'];
?>

(ARRAY_A - Devuelve un array asociativo de nombres de campo a valores)

Es un comienzo.

10 nov 2011 03:53:41
Comentarios

He estado usando el codex, pero me resulta difícil de entender. Ten en cuenta que solo llevo codificando en php como 2 días :)

Stian Stian
10 nov 2011 04:19:45

Todo en broma :) - espero que esto haya ayudado.

Sterling Hamilton Sterling Hamilton
10 nov 2011 05:34:41
0

Quería algo similar pero con el Título de la página, así es como lo logré:

$args = array(
    'post_type' => 'page',
    'title' => 'El título de la página que deseas'
);

$your_query = new WP_Query( $args );
while ( $your_query->have_posts() ) : $your_query->the_post();
    the_content();
endwhile;
20 feb 2018 17:28:05
1
-1

La mejor manera de obtener el contenido de la página actual

global $post;
echo $post->post_content;

o

global $wp_query;
echo $wp_query->post->post_content;
12 abr 2019 03:47:50
Comentarios

La pregunta era: cómo mostrar el contenido de una página diferente (la página about) en la página de inicio. La página About no está configurada como página de inicio. No se trataba de mostrar el contenido de la página actual.

nmr nmr
12 abr 2019 09:34:24