web-dev-qa-db-fra.com

Le modèle de page ne s'affiche pas

Je ne comprends pas pourquoi cela ne fonctionne pas. J'ai un modèle de page personnalisé, page-politique.php. Il devrait ressembler à cette page:

banking transaction page

Mais son affichage ceci:

campaign contribution page

Ive double, triple vérifié que le bon modèle est assigné à la bonne page.

page settings for campaign office page

2
user12920

C’est moins une réponse, mais plutôt une aide au dépannage ... Ajoutez cette fonction à votre projet (probablement functions.php), puis appelez-la en haut de chaque fichier de modèle de votre thème ...

/**
 * Outputs the name of the file as an HTML comment for easy-peesy troubleshooting.
 *
 * @param string $file This function should always be passed the value of __FILE__
 */
function output_file_marker( $file )
{
    // Strip out system path (keeping only site-root-relative path)
    $file = preg_replace( '|' . preg_quote( ABSPATH ) . '|', '', $file );

    // Output an HTML comment with the current template path
    printf( "\n\n<!-- ".__( 'Template file: %s', 'nvLangScope' )." -->\n\n", '/'.$file );
}

Cela vous aidera à identifier le fichier de modèle en cours de chargement en générant un commentaire HTML au début de chaque modèle et peut vous aider à résoudre de nombreux problèmes étranges de "mauvais modèle".

Deuxièmement, essayez ceci ...

Définissez votre attribut de page> Modèle sur Par défaut, puis renommez votre fichier de modèle en fonction du numéro de page au lieu du slug (vous pouvez également supprimer le nom du modèle ... au cas où). Par exemple, si votre page de problème avait un ID de publication de 103, vous nommeriez le fichier de modèle page-103.php

Si vous souhaitez conserver le modèle en tant que modèle de remplacement sélectionnable par l'administrateur, utilisez une convention de dénomination différente. J'utilise override-description.php lorsqu'un modèle doit être sélectionnable par l'administrateur.

Enfin, assurez-vous que tous les plugins sont désactivés. Les plugins peuvent jouer avec les modèles en les écrasant ... Ceci est particulièrement vrai pour certains packages de commerce électronique.

2
Matt van Andel

Je ne sais pas si ce que vous voyez sur cette page sont vos publications ou non, mais vous devriez vérifier vos paramètres pour voir si cette page est configurée ou non comme page "Publications" dans l'onglet "Lecture". Si cela est défini, il remplace le modèle et charge simplement index.php au lieu de votre modèle.

Bonne chance!

0
socki03

Vérifiez si vous avez enregistré un type de message personnalisé si le slug est "politique" ('rewrite' => array('slug' => 'politics')). Si vous utilisez un type de publication personnalisé qui a le même slug que l’une de vos pages, il est probable que WordPress vous montrera la page d’archive de votre cpt au lieu de la page de votre menu. Si vous n'avez pas besoin de l'archive du cpt, vous pouvez définir 'has_archive' => false pour ce type de publication personnalisé.

Videz vos permaliens après avoir modifié les règles de réécriture.

0
Christoph

J'ai testé votre page sur mon installation locale, cela fonctionne bien, mais il y a une erreur sur la page en mode débogage. voici votre erreur, alors peut-être que vous pouvez travailler à partir d'ici aussi

Attention: number_format () s'attend à ce que le paramètre 1 soit double, chaîne donnée dans C:\xampp\htdocs\wordpress\wp-content\themes\tema2014\page-test.php à la ligne 39

Un bon point à noter, lorsque vous êtes occupé à concevoir un thème, définissez votre débogage sur true dans wp-config.php. cela aide vraiment beaucoup obtenir des erreurs corrigées

0
Pieter Goosen