Les modèles personnalisés n'apparaissent pas dans la liste déroulante des modèles.

16

J'ai des problèmes avec les modèles dans Wordpress (multisite). J'ai créé un fichier à la racine de mon dossier de thème enfant (template-test.php)

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

<?php get_header(); ?>

<?php get_footer(); ?>

Ce modèle n'apparaît pas dans la liste déroulante des modèles lors de la création d'une nouvelle page ou de la modification d'une page existante. La seule chose dans la liste déroulante est le "modèle par défaut".

Ce que j'ai essayé jusqu'à présent: - Désactiver et activer mon thème - Permaliens Flush - Vérifier les permissions de mes fichiers - Vérifiez si style.css se trouve à la racine du dossier du modèle (c'est-à-dire)

J'ai essayé le même fichier sur une autre installation Wordpress, et cela fonctionne bien.

    
posée Tom 08.01.2017 - 23:46

6 réponses

27

Justement, dans Wordpress 4.9, il y a ce bogue: enlace , ce qui entraîne la réanalyse des fichiers de modèle une fois par heure.

Pour résoudre ce problème (jusqu'à ce qu'ils publient une nouvelle version de WP avec cette version modifiée), téléchargez le correctif sur ce ticket de bogue et apportez les modifications du correctif à wp-includes/class-wp-theme.php .

J'espère que cela économisera les 2 heures que j'ai perdues à ce sujet.

    
réponse donnée Jan Żankowski 21.11.2017 - 20:10
4

Il y a un bug dans Wordpress 4.9.

J'ai trouvé ce plugin temporaire super simple. Je prévois de le désinstaller une fois le bogue corrigé, mais cela fonctionne très bien en attendant!

plug-in: enlace

    
réponse donnée brilliantairic 22.11.2017 - 00:30
2

J'ai également eu ce problème avec un site sur WordPress Multisite et j'ai pu le résoudre en procédant comme suit:

  1. Accédez à enlace (remplacez exemple.com par votre URL).
  2. Cliquez sur le lien "Modifier" sous le thème qui vous cause des problèmes.
  3. Dans la barre latérale droite, cliquez sur le nom du fichier de modèle qui ne s'affiche pas. Par exemple, il peut indiquer "Modèle de page d'événements (template_events.php)".
  4. N'effectuez aucune modification dans le fichier et cliquez sur le bouton bleu "Mettre à jour le fichier".
  5. Rafraîchissez l'écran de modification de la page où vous essayez de définir le modèle. Celui-ci devrait maintenant s'afficher dans la liste déroulante.

Si cela ne vous convient pas, je vous conseillerais de vérifier enlace . Il existe d'autres solutions possibles.

Bonne chance.

    
réponse donnée jg314 15.03.2017 - 21:17
1

Les modèles peuvent être désactivés en les désélectionnant de la variable globale wp_themes avant le chargement de la liste déroulante des modèles.

Exécutez ce code sur la page pour voir quels modèles apparaissent:

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

Si votre modèle n'apparaît pas, le thème parent peut l'avoir supprimé du tableau.

Il pourrait apparaître, si vous exécutez ce code en frontal, car le thème parent pourrait ne le désélectionner que pendant le chargement de la page de l'éditeur admin.

Téléchargez le thème parent et recherchez les fichiers $wp_themes et wp_get_themes(); dans les fichiers pour trouver l'emplacement de ce code.

Espérons qu'ils vous ont donné le moyen d'éviter l'utilisation d'un filtre, sinon vous devrez peut-être rajouter les fichiers dans le thème de l'enfant. Cela pourrait être utile: enlace

    
réponse donnée Levi Johansen 09.01.2017 - 00:40
1

Assurez-vous d’avoir index.php dans votre thème principal. Le thème principal doit avoir index.php. J'ai le même problème, et c'était le cas. Vérifié par:

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

add_action('init', 'testate' );
    
réponse donnée Isu 02.11.2017 - 13:01
1

Correction du modèle de page ne figurant pas dans le menu déroulant veuillez activer le plugin ci-dessous pour le réparer (au lieu de changer les fichiers core de wordpress)

Ci-dessous un lien pour le téléchargement enlace

    
réponse donnée Rohit Savaj 29.11.2017 - 12:28

Lire d'autres questions sur les étiquettes