Utilisation du champ "Fichier" de ACF avec Timber

Hack pour obtenir le lien téléchargeable de votre fichier directement via Twig

Si vous utilisez le plugin Advanced Custom Field (ACF) dans Wordpress, combiné avec Timber, il se peux que vous vous retrouviez confrontés à cette problématique : Vous devez intégrer une page comportant un bouton, ou un lien, permettant de télécharger un fichier (PDF, Image, Txt, etc).

Le hic, c'est que Timber intègre parfaitement tous les champs générés avec ACF au contexte de votre article dans l'objet "post", mais il semble qu'il ai plus de mal avec les champs de type "Fichier".

Timber aura tendance a générer une URL foireuse de type "http://mon-site.fr/slug-page/ID_FICHIER" et le fichier ne sera bien évidemment pas accessible via cet URL.

En suivant une discussion dans les issues Github de Timber, un membre donne une solution au problème, qui consiste a convertir notre fichier en objet "TimberImage" pour accéder facilement a son URL.

Ouais, c'est pas propre tout ça... Mais ça fonctionne ! Donc on s'en contente faute de mieux :)

Enfin, si vous souhaitez accéder au lien du fichier avant d'être dans le template Twig (dans votre fichier PHP) la solution est similaire.

516kv5hpwuL.jpg

Modern PHP (Anglais)

Un guide complet sur PHP, dans sa version moderne.

blog comments powered by Disqus
Licence Creative Commons Cet article est mise à disposition sous Licence Creative Commons Attribution - Partage dans les mêmes Conditions 4.0 International.