[(#REM)
Métas+ : ce squelette contient le code des métas pour Dublin Core, Open Graph et Twitter.
Ici aucune requête SQL, on doit recevoir toutes les données.
Il est inclus dans inclure/metasplus/dist.html, voir ce dernier pour les explications et les paramètres.
]
[(#REM)
============================================
1) Normalisation et vérification des valeurs
============================================
]
#SET{titre, #ENV{titre}|trim|html_entity_decode|supprimer_tags|textebrut}
#SET{desc, #ENV{desc}|trim|html_entity_decode|supprimer_tags|textebrut}
#SET{url, #ENV{url}|trim}
#SET{date, #ENV{date}|trim}
#SET{maj, #ENV{maj}|trim}
#SET{lang, #ENV{langue}|trim}
#SET{og-type, #ENV{og-type}|trim}
#SET{dc-type, #ENV{dc-type}|trim}
#SET{territoire, #ENV{territoire}|=={en}|?{uk,#ENV{territoire,#ENV{langue}}}|strtoupper|trim}
#SET{locale, #ENV{langue}|concat{_,#GET{territoire}}|trim}
#SET{couper, 200}
#SET{dimensions, #ARRAY{
opengraph, 1200:630,
twitter, 506:253,
}}
[(#REM)
auteurs
]
#SET{auteurs,#ARRAY}
#SET{auteurs,#GET{auteurs}|push{#VALEUR|trim|html_entity_decode|supprimer_tags|textebrut}}
[(#REM)
mots-clés
]
#SET{mots,#ARRAY}
#SET{mots,#GET{mots}|push{#VALEUR|trim|html_entity_decode|supprimer_tags|textebrut}}
[(#REM)
Logos
]
#SET{logos,#ARRAY}
#SET{valeur,#VALEUR|is_array|?{
#ARRAY{
url, #VAL{#VALEUR{url}|supprimer_timestamp},
alt, #VAL{#VALEUR{alt}|trim|supprimer_tags|textebrut},
},
#ARRAY{url,#VALEUR|supprimer_timestamp}
}|array_filter}
[(#CHEMIN{#GET{valeur/url}}|oui)
#SET{logos,#GET{logos}|push{#GET{valeur}}}
]
[(#REM)
============================
2) Affichage des métadonnées
============================
]
[(#REM)
===========
Dublin Core
===========
http://dublincore.org
]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[(#REM)
==========
Open Graph
==========
http://ogp.me
https://developers.facebook.com/docs/sharing/opengraph/object-properties
https://developers.facebook.com/docs/sharing/webmasters/images
https://developers.facebook.com/tools/debug/
]
[(#GET{logos}|count|oui)
]
[]
[]
[]
[]
[]
[]
#SET{largeur,#GET{dimensions/opengraph}|explode{:}|table_valeur{0}}
#SET{hauteur,#GET{dimensions/opengraph}|explode{:}|table_valeur{1}}
#SET{src, #VALEUR{url}|extraire_attribut{src}
|sinon{#VALEUR{url}}
|supprimer_timestamp}
[(#VAL{finfo_file}|function_exists|oui)
#SET{finfo,#EVAL{FILEINFO_MIME_TYPE}|finfo_open}
#SET{mimetype,#GET{finfo}|finfo_file{#GET{src}}}
]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[(#REM) Si plugin facebook, on envoie la méta fb:app_id ]
[]
[(#REM)
============
Twitter Card
============
https://dev.twitter.com/cards/types/summary
https://dev.twitter.com/cards/types/summary-large-image
https://cards-dev.twitter.com/validator
]
[]
[]
[]
#SET{largeur,#GET{dimensions/twitter}|explode{:}|table_valeur{0}}
#SET{hauteur,#GET{dimensions/twitter}|explode{:}|table_valeur{1}}
#SET{src, #VALEUR{url}|extraire_attribut{src}
|sinon{#VALEUR{url}}
|timestamp}
[]
[]
#FILTRE{trim}