Aide sur de la mise en page

Information importante

En raison d'un grand nombre d'inscriptions de spammers sur notre site, polluant sans relache notre forum, nous suspendons la création de compte via le formulaire de "sign up".

Il est néanmoins toujours possible de devenir adhérent•e en faisant la demande sur cette page, rubrique "Inscription" : https://www.drupal.fr/contact


De plus, le forum est désormais "interdit en écriture". Il n'est plus autorisé d'y écrire un sujet/billet/commentaire.

Pour contacter la communauté, merci de rejoindre le slack "drupalfrance".

Si vous voulez contacter le bureau de l'association, utilisez le formulaire disponible ici, ou envoyez-nous un DM sur twitter.

Bonjour,

cela fait maintenant un mois que j'ai switché sur Drupal (5x), et 15 jours que mon site tourne avec.

J'aurai juste aimé un coup de main sur de la mise en page. En effet, sur la page d'accueil, j'aimerai que le dernier article posté soit en haut de la colonne centrale, tandis que les articles les plsu anciens seraient en dessous, en plus petit et sur deux colonnes dans la colonne centrale. En clair, je voudrai un truc entre SVM Mac et Rue 89

Mon site c'est par là : SpotMac, si vous avez des idées pour résoudre mon problème...

Version de Drupal : 

Salut,

Je crois comprendre ce que tu veux faire, mais pas la référence à SVM Mac ou Rue89 (ni l'un ni l'autre n'ont d'articles sur 2 colonnes).

La solution la plus simple est d'utiliser le module "panels" qui est fait exactement pour ça.

La solution la plus complexe (mais qui t'aide à bien comprendre Drupal) est la suivante, dans les grandes lignes (pour le détail de la syntaxe, il faudra faire qq recherches).

  1. Déclarer 3 nouvelles régions qui seront utilisées sur la page d'accueil.

Appelons-les a_la_une, col_centrale_droite, et col_centrale_gauche. Pour les déclarer, crée une fonction MONTHEME_regions() dans le fichier template.php de ton thème. Cf. http://drupal.org/node/65064

  1. Créer un template spécial pour la home.

Comme la mise en page de ta home est très différente du reste du site, crée un fichier page-front.tpl.php en faisant une copie du fichier page.tpl.php (situé dans le répertoire de ton thème). Drupal détectera ce fichier et l'utilisera automatiquement pour afficher la home. Cf. http://drupal.org/node/65064 (again)

  1. Dans page-front.tpl.php, afficher les nouvelles régions déclarées en 1.

Crée le HTML qui va bien pour faire ta mise en page a_la_une + 2 colonnes, et affiche les nouvelles régions aux endroits appropriés en écrivant :

<?php
 
print $a_la_une
?>
<?php
 
print $col_centrale_droite
?>

et ainsi de suite...

  1. Enfin, il te faudra envoyer du contenu dans ces régions. Pour cela, le mieux est d'utiliser le module views pour remonter les nodes que tu veux et les afficher sous forme de blocs. Ensuite, via l'interface d'admin tu affectes ces blocs aux nouvelles régions créées en 1.

Pour les références :
Rue 89 pour le teaser sympa (bravo au dev')
SVM Mac pour la présentation teaser + liste des titres.

Je suis en train de tester ta soluce en local, c'est un peu l'idée que j'avais, mais ça se révèle un peu plus compliqué que prévu, surtout avec l'inclusion de mes nouveaux JavasScripts (c'est le bordel...).

En tout cas, merci de ta réponse, complète et documentée, ca fait toujours plaisir.