Las plantillas personalizadas no se muestran en el menú desplegable de plantillas

23

Tengo algunos problemas con las plantillas en Wordpress (multisitio). He creado un archivo en la raíz de mi carpeta de tema hijo (template-test.php)

<?php
/**
* Template Name: Test template
*
*/
?> 

<?php get_header(); ?>

<?php get_footer(); ?>

Esta plantilla no se muestra en el menú desplegable de plantillas al crear una nueva página o al editar una página existente. Lo único en el menú desplegable es la 'plantilla predeterminada'.

Lo que he intentado hasta ahora: - Deshabilitar y habilitar mi tema - Permalink de vaciado - Verificar los permisos de mis archivos - Verificar si style.css está en la raíz de la carpeta de la plantilla (está)

He intentado el mismo archivo en otra instalación de Wordpress, y allí funciona bien.

Tom
fuente
Compruebe si tiene index.php en la raíz de su tema
Eugene
Tengo el mismo problema y probé todo lo que mencionaste. ¿Alguna vez obtuviste una solución?
wckronholm
En mi caso, ni siquiera veo el archivo en el Editor de temas. @ Tom, ¿lo has resuelto?
Ofir Baruch

Respuestas:

32

Solo en Wordpress 4.9 hay este error: https://core.trac.wordpress.org/ticket/42573 que hace que los archivos de plantilla solo se vuelvan a explorar una vez cada hora.

Para solucionarlo (hasta que publiquen una nueva versión de WP con este cambio), descargue el parche en ese ticket de error y realice los cambios del parche a wp-includes/class-wp-theme.php.

Espero que esto ahorre a alguien las 2 horas que desperdicié en esto ...

Jan Żankowski
fuente
3
También puede agregar este código a functions.php o agregarlo como un complemento para detener el almacenamiento en caché en lugar de editar archivos principales: gist.github.com/westonruter/6c2ca0e5a4da233bf4bd88a1871dd950
Bradley4
8
Otra solución simple es subir la versión del tema en el archivo style.css como lo señaló @ ocean90 en el foro.
r1987
1
@ r1987 la actualización style.css funcionó!
Darye
Para mí, el style.css estaba dañado, así que solo actualice el archivo y debería ser bueno
asiente con la cabeza
3

Asegúrese de tener index.php en su tema principal. El tema principal debe tener index.php. Tengo el mismo problema, y ​​este fue el caso. Revisado por:

function testate(){
    global $wp_themes;
    $tema = wp_get_theme();
    echo '<pre>';
    print_r($tema);
    die;
}

add_action('init', 'testate' );
Isu
fuente
2

También tuve este problema con un sitio en WordPress Multisite y pude solucionarlo siguiendo estos pasos:

  1. Vaya a http://example.com/wp-admin/network/themes.php (reemplace example.com con su URL).
  2. Haz clic en el enlace "Editar" debajo del tema que te está causando problemas.
  3. En la barra lateral derecha, haga clic en el nombre del archivo de plantilla que no aparece. Por ejemplo, podría decir "Plantilla de página de eventos (template_events.php)".
  4. No realice modificaciones en el archivo y haga clic en el botón azul "Actualizar archivo".
  5. Actualice la pantalla de edición de la página donde está tratando de configurar la plantilla y ahora debería aparecer en el menú desplegable.

Si esto no funciona, le sugiero que visite http://vanseodesign.com/wordpress/wp-page-templates-dropdown/ . Hay algunas otras posibles soluciones allí.

Buena suerte.

jg314
fuente
1

Las plantillas se pueden desactivar al desarmarlas de la wp_themesvariable global antes de cargar el menú desplegable de la plantilla.

Ejecute este código en la página para ver qué plantillas aparecen:

global $wp_themes;
$tema = wp_get_themes();
print_r($tema["child-theme folder name"]["Template Files"]);

Si su plantilla no aparece, el tema principal podría haberla desarmado de la matriz.

Puede aparecer, si ejecuta este código en el front-end, ya que el tema principal solo puede desarmarlo durante la carga de la página del editor de administración.

Descargar el tema de los padres y buscar en los archivos de $wp_themesy wp_get_themes();para encontrar la ubicación de ese código.

Esperemos que le hayan dado una manera de evitarlo usando un filtro, de lo contrario, tendrá que volver a agregar los archivos en el tema secundario. Esto podría ser útil: http://www.wpexplorer.com/wordpress-page-templates-plugin/

Levi Johansen
fuente
0

Arreglar la plantilla de la página que no se muestra en el menú desplegable, active el complemento a continuación para corregir (en lugar de cambiar los archivos principales de WordPress)

A continuación se muestra el enlace para descargar https://drive.google.com/file/d/1ycHQGdc_vQtvtfBaznJp1KRsEbcoRwxB/view?usp=sharing

Rohit Savaj
fuente
2
¡Nunca instales un complemento desde un enlace como este! No se puede confiar. Siempre instale complementos de fuentes confiables como el repositorio de complementos de Wordpress.
jasonlfunk
0

¿Ha movido o eliminado accidentalmente el archivo style.css de la raíz del tema?

Si es así, podría ser esto: vuelva a crear los temas style.css para volver a habilitar el menú desplegable de la plantilla.

Jason es mi nombre
fuente