web-dev-qa-db-fra.com

Créer le modèle de page de blog personnalisé correctement

Je souhaite créer un nouveau modèle de page personnalisé pour la présentation des articles de blog. Je me rends compte que lorsque vous affectez une page pour afficher des messages via Paramètres> Lecture, il attribuera ensuite home.php pour afficher le contenu de cette page - des publications en cours sur une page. De plus, l'option d'attribution d'un modèle de page dans la vue d'édition de page disparaît.

En ce moment, il affiche un article par défaut par article. Je souhaite proposer à l'administrateur une autre option permettant de sélectionner un modèle différent, qui pourrait donner un style aux blogs en format gird ou maçonnerie. Je ne sais pas comment faire ça.

Je pourrais le faire en sans attribuer la page pour afficher les blogs dans la zone Paramètres> Lecture admin, puis en autorisant l'utilisateur admin à affecter le modèle spécifique à la page à l'aide de Attributs de page menu dans l'édition de page mais selon https://make.wordpress.org/themes/2014/06/28/correct-handling-of-static-front-page-and-custom-blog-posts-index -template/ , c'est la mauvaise façon .

J'ai essayé de chercher des solutions sur google, mais tout ce que je trouve, ce sont des recommandations sur l'utilisation des plugins. Quelqu'un pourrait-il m'indiquer des ressources utiles?

5
Ryan Coolwebs

N'oubliez pas que Wordpress a été principalement conçu pour être un CMS de blogging. Par conséquent, lorsqu'il s'agit de développement de thèmes, les développeurs optent souvent pour une approche non standard en échange d'un potentiel supplémentaire.

Les concepteurs de thèmes ont trois options lorsqu'ils abordent cette question, dont l'une (n ° 2 ci-dessous) que vous avez mentionnée.

  1. Editez directement le index.php pour modifier l’index du blog. Ce n'est pas une bonne option car index.php devrait être une solution de secours au cas où une autre partie de votre modèle serait manquante.

    • Avantages: rapide et facile
    • Inconvénients: risque d'erreur et contre les principes orientés objet
  2. Créez un modèle de page pour l'index du blog. Comme vous l'avez dit, de nombreux développeurs de thèmes choisissent cette voie, car c'est un moyen rapide de vous donner le contrôle de l'index des blogs et de vous permettre de jouer avec différents modèles d'index de blogs (ce qui est utile pour développer un thème polyvalent. ).

    • Avantages: polyvalent, permet de créer un thème solide
    • Inconvénients: vous ne parvenez plus à appeler la fonctionnalité native de Wordpress relative à l’index des blogs.
  3. Créez un front-page.php, home.php et index.php dans votre thème. Le front-page sera la page d'accueil du thème. home sera par défaut sur votre index de blog et index sera votre solution de secours pour tous les modèles.

    • Avantages: Nettoyer et utiliser pleinement les objets et méthodes natifs de Wordpress
    • Inconvénients: Limité par Wordpress: pas idéal pour la plupart des thèmes riches en options que vous voyez aujourd'hui

Personnellement, j'aime bien utiliser le n ° 2, car la plupart de mes projets de développement Wordpress de nos jours ne sont pas que des blogs: ce sont des sites complets avec une architecture d'informations profonde et une interactivité complexe.

3
Orun

Je vais couvrir plusieurs bases dans ma réponse. :)

Si vous créez votre propre thème et souhaitez modifier la présentation par défaut de certains types de pages (par exemple, la page d'archivage des catégories ou une page de publication de blog), consultez le diagramme de la hiérarchie de modèles WordPress . Il indique quels fichiers de votre répertoire de thème sont utilisés pour afficher quels types de publication.

En ayant un fichier php dans votre thème qui correspond à un fichier dans cette hiérarchie, il sera automatiquement utilisé par WordPress - tel que single.php pour afficher un seul post. Si vous avez déjà un thème avec ce fichier, vous pouvez évidemment modifier le fichier et il sera reflété sur le site.

Séparément, si vous souhaitez créer des modèles de page personnalisés tout en souhaitant qu'un administrateur puisse les modifier (poste par poste), vous devez effectuer des vérifications sur les rôles et les fonctionnalités. Cette réponse StackExchange peut être utile. (Vous devez toujours créer ces modèles de page personnalisés, voir cet article de Smashing Magazine ).

Sinon, si vous souhaitez qu'un administrateur choisisse plus globalement des modèles de page/publication en fonction de certains critères, ou des modèles de page personnalisés pour l'ensemble du site, vous devrez ajouter une option de zone administrative à votre thème, ainsi que des options personnalisées. code dans votre thème pour afficher la bonne page en fonction de cette option. L'ajout d'une option à la zone d'administration se fait facilement avec l'un des nombreux plug-ins, mais peut également être fait à la main (voir, par exemple, cet article sur SitePoint ).

0
iguanarama

Ok, vous voulez dire que vous voulez créer votre propre page de modèle pour afficher les articles de blog, non?

Ensuite, allez de cette façon créer un fichier php nommé blog-template.php

Dans ce fichier, placez ce code au-dessus de tout.

<?php 
/*
* Template Name: Blog Post
*/
?>

Ensuite, ci-dessus le code ci-dessus, placez tout votre code de la page index.php/home.php dans cette page, enregistrez le fichier et créez maintenant une page à partir de dashboard, disons que le nom de cette page est "Blog" Maintenant du côté droit chose page template que nous venons de créer comme Blog Post liste déroulante des modèles.

Publiez la page et vous êtes prêt à utiliser votre propre page pour afficher vos publications.

Faites-moi savoir si quelque chose d'autre est nécessaire.

0
Akram ul haq