Múltiples páginas en una sola página
Tengo el siguiente código (creado amablemente por alchemyth en respuesta a una pregunta que publiqué en el foro de WordPress.org aquí) que espero usar para mostrar muchas páginas en una sola página:
<?php
$args = array(
'post_type' => 'page',
'post__in' => array( 2, 5, 35, 67 ) //lista de IDs de páginas
);
$page_query = new WP_Query( $args );
if( $page_query->have_posts() ) :
echo '<div class="pages-on-page">';
//imprime cualquier título general o encabezado aquí//
while( $page_query->have_posts() ) : $page_query->the_post();
echo '<div class="page-on-page" id="page_id-' . $post->ID . '">';
//imprime cualquier salida que desees por página//
echo '</div>';
endwhile;
echo '</div>';
else:
//texto opcional aquí si no se encuentran páginas//
endif;
wp_reset_postdata();
?>
Como principiante, no estoy seguro de dónde colocarlo para que funcione. Estaría muy agradecido si alguien pudiera ayudarme con esto.

Echa un vistazo a las Plantillas de Página de WordPress;
Puedes crear un archivo con una estructura que coincida con tu tema actual y colocar tu código en el área de contenido (o colocar un action hook para tu contenido especial).
Ejemplo para Twenty Twelve:
/*
Template Name: Mi Página Personalizada
*/
get_header(); ?>
<div id="primary" class="site-content">
<div id="content" role="main">
<?php
$args = array(
'post_type' => 'page',
'post__in' => array( 2, 5, 35, 67 ) //lista de page_ids
);
$page_query = new WP_Query( $args );
if( $page_query->have_posts() ) :
echo '<div class="pages-on-page">';
//imprime cualquier título general o cabecera aquí//
while( $page_query->have_posts() ) : $page_query->the_post();
echo '<div class="page-on-page" id="page_id-' . $post->ID . '">';
//imprime cualquier salida que desees por página//
echo '</div>';
endwhile;
echo '</div>';
else:
//texto opcional si no se encuentran páginas//
endif;
wp_reset_postdata();
?>
</div><!-- #content -->
</div><!-- #primary -->
****No olvides comenzar el archivo con <?php
Guarda este código como un archivo PHP con casi cualquier nombre tu_plantilla_personalizada.php
y colócalo en la carpeta de tu tema hijo. Luego añade una nueva página y asigna la plantilla de página como Mi Página Personalizada
como se ve arriba en el código.
Esto debería ser suficiente para que al menos puedas ver tu código en el frontend del sitio web.

He colocado el código en una página usando un plugin PHP con 'plantilla predeterminada' y 'sin padre' - pero no funciona - ¿qué estoy haciendo mal?

Primero necesitaría saber de qué plugin estás hablando. Pero antes de eso, ¿has revisado el enlace del Codex de Wordpress que mencioné en mi respuesta?

El plugin está aquí. Y sí, lo revisé, pero debo confesar que mucho del contenido se me escapa - ¡seguiré intentando!

¿Qué tema estás usando? Podría ayudarte a comenzar con una plantilla de ejemplo.

Estoy usando twentytwelve - aunque he creado un child theme, ya que lo he modificado un poco.

Muchas gracias - sin embargo, no tengo la opción de crear una página personalizada en el modo de edición de página. Solo aparecen "plantilla predeterminada", "plantilla de página de inicio", "plantilla de página completa" y "arriba".

¿Tienes acceso FTP a tu sitio? Puedes arrastrar y soltar un archivo en la carpeta

Solo actualiza donde editas una página en el área de administración de WordPress. Ahora debería aparecer en el menú desplegable de plantillas de página

No hay suerte, me temo - lo siento, esto debe ser muy frustrante para ti - Claramente me estoy perdiendo algo muy obvio!

¿Simplemente copio el código de arriba y agrego < ? php al inicio, es correcto?

He intentado agregarlo en la carpeta public_html (carpeta raíz) y llamarlo directamente en la barra de direcciones, pero solo aparece una página en blanco :(

Quiero agradecerte +1 por tu ayuda, ¡lamento no haber podido hacerlo funcionar! :/

Necesitas agregar el código para la salida //imprime cualquier salida que desees por página//

Esto funciona para mí con WP Twenty Twelve, no olvides cambiar los IDs de las páginas
<?php
/*
Template Name: Mi Página Personalizada
*/
get_header();
$args = array(
'posts_per_page' => get_option('posts_per_page'), // el valor por defecto se toma de la configuración, pero puedes usar uno personalizado
'paged' => $current_page // página actual
);
query_posts(
array( 'post_type'=>'page', 'post__in' => array( 6891, 9400 ) ) //cambiar los IDs de página
); ?>
<div id="primary" class="site-content">
<div id="content" role="main">
<?php
while ( have_posts() ) :
the_post();
?>
<?php if ( has_post_thumbnail() ) : ?>
<div class="entry-page-image">
<?php the_post_thumbnail(); ?>
</div><!-- .entry-page-image -->
<?php endif; ?>
<?php get_template_part( 'content', 'page' ); ?>
<?php endwhile; // fin del loop. ?>
</div><!-- #content -->
</div><!-- #primary -->
<?php get_sidebar(); ?>
<?php get_footer(); ?>

¡Hola! Gracias por tu contribución y bienvenido a WordPress.StackExchange. Algunas cosas a considerar para una posible [edición] de tu respuesta, que podrían generar más votos positivos y, por lo tanto, desbloquear más posibilidades para ti en este sitio: Por favor, ten en cuenta que no todo el mundo puede leer caracteres cirílicos. También ayuda explicar por qué tu fragmento de código ayudará al OP a resolver su problema. ¡Espero que esto ayude! ¡Que tengas un buen día!
