Frederic de Villamil


, , , , , , , , ,


Partagez sur Twitter Partagez sur Facebook Partagez sur Google Plus Partagez sur Linkedin Plus

Des templates spécifiques pour les articles et les catégories dans Typo

Typo 6.0.6 a introduit le concept de types d’articles, permettant d’utiliser des templates spécifiques pour chacun d’eux. Avec la version 6.0.8, ce principe a été étendu aux catégories et aux tags. Cet article a pour objectif de vous expliquer comment mettre en place un tel type de templates.

Imaginons que vous avez lancé un blog dans lequel vous consignez, entre autres choses, vos dégustations de vin. Vous souhaitez afficher ces articles d’une manière particulière, en y joignant toujours une image, avec un style particulier. Vous souhaitez également donner à la catégorie oeunologie une identité propre, mais sans la sortir de votre blog. Afin d’éviter les trolls, vous allez également désactiver les commentaires sur ces billets (c’est surtout pour rendre le template plus lisible, ndlr).

Préparer l’environnement

Avant de créer les templates, vous allez mettre en place l’environnement nécessaire à vos exercice de rédaction :

  1. Un type d’articles judicieusement intitulé “vin”.
  2. Une catégorie “oeunologie”.

Connectez vous à l’administration de votre blog, et cliquez sur Articles, puis Types d’Articles. Créez un nouveau type d’article nommé “vin”.

Créer un nouveau post type

Notez le nom du template qui apparait ci-dessous, vous l’utiliserez un peu plus tard.

Détail d'un post type

Créez maintenant une nouvelle catégorie. Pour cela, cliquez sur “Articles”, puis “Catégories”. Appelez là “oeunologie”.

Créer une nouvelle catégorie

Là encore, conservez le lien permanent, vous en aurez besoin un peu plus tard.

Détail d'une nouvelle catégorie

Créer les templates associés

Vous allez maintenant créer deux nouveaux templates. Le premier vous servira à afficher les articles associés au post type “vin”, l’autre sera réservé à la catégorie oeunologie.

Créez un fichier nommé vin.html.erb dans le répertoire views/articles/ de votre thème. Si l’aborescence views/articles/ n’existe pas, créez la. Le contenu du fichier devrait ressembler à ça :

<typo:code>

>

<%= link_to_permalink @article, @article.title %>

<%= _("Posted by")%> <%= author_link(@article) %> <%= display_date_and_time @article.published_at %>

<%= @article.html(:body) %> <% @article.resources.each do |upload| %> = 0 %>’ id=”article-<%= article.id %>”>

<% @articles.each do |article| %>

<%= linktopermalink(article, article.title) %>

<%= (“Posted by”)%> <%= authorlink(earticle) %> <%= displaydateandtime article.publishedat %>

<%= article.html(:body) %> <% article.resources.each do |upload| %>

<img src='<%= "#{this_blog.base_url}/files/#{upload.filename}" %>' class="centered" />

<% end %>

<%= article.html(:extended) %>

<% end %>

<%= willpaginate @articles, { :previouslabel => (‘Previous’), :nextlabel => _(‘Next’) } %>
</typo:code>

Voilà, vous y êtes. Vous allez maintenant pouvoir écrire vos articles. N’oubliez pas de sélectionner le type d’articles “vin”, ni de publier votre article dans la catégorie oeunologie.

Éditeur des posts