Mostrar diferentes layouts para las entradas individuales (single.php) puede ser necesario porque deseamos mostrar diferentes productos o contenidos que así lo requieren.
Lo primero es descargar el archivo single.php del theme que estamos usando.
A ese archivo que hay que renombrarlo, por ejemplo: single-alterno.php
Ahora hay que subirlo y abrirlo en el editor de WordPress para cambiar la cabecera por lo siguiente:
<?php
/*
*Template Name: Alterno Article
*Template Post Type: post
*/
get_header(); ?>
Ahora cuando creamos una nueva entrada tendremos la opción de asignar la plantilla por defecto (single.php) o la que hemos agregado (single-alterno.php):
Al dar clic se mostrarán las opciones de platillas que tenemos para las entradas individuales.
Al resto es agregar los elementos que queremos mostrar en esta plantilla (single-alterno.php) y trabajar con las hojas de estilo (CSS).
Es muy importante que revises el archivo single.php, la mayoría de los temas usan la siguiente función para indicar que contenido mostrar:
<?php get_template_part( 'template-part/content', 'single' ); ?>
La función indica que se carga el archivo contenido-single.php que se encuentra en el directorio template-part del tema.
Entonces, debes agregar un archivo, por ejemplo, content-alterno.php en el directorio template-part del tema. Y llamarlo con la función:
<?php get_template_part( 'template-part/content', 'alterno' ); ?>
También, es posible que estés trabajando con los formatos de entrada de WordPress, entonces, se puede utilizar la función de la siguiente manera:
<?php get_template_part( 'template-part/content', get_post_format() ); ?>
Para que se carguen diferentes layouts en función del formato de entrada tendrás que agregar los archivos asociados, por ejemplo, content-aside.php sería el contenido a mostrar para las minientradas (aside) o, content-chat.php para mostrar el contenido asociado a las transcripciones de chat.