Pagination y articulos compartidos en facebook
Paginación funciona bien. En mi experiencia funciona incluyendo la parte correspondiente de la codificación:
<INCLURE{fond=inclure/article,debut_principale=@#ID_ARTICLE,env,ajax} />
Escogiendo en debut_principale el artículo con el que deseo iniciar la revisión. Tal como los desarrolladores aconsejan.
Pero también comparto los articulos en Facebook que exige la declaración en formato Open Graph de lo que se comparte, especialmente de los gráficos.
La declaración OpenGraph se debe realizar en el interior de las etiquetas
declaración OpenGraphPero pagination incluye instrucciones ajax:
Inmediatamente despues de <body>, presuponiendo que los elementos a actualizar están solo dentro de <body> texto a actualizar </body>. Pero es un ERROR porque las etiquetas de OpenGraph y también de Twitter se ubican dentro de <head> </head>. Por tanto también se debe actualizar <head>.
**La consecuencia es que Facebook no rastrea todas las etiquetas y por tanto no comparte la información que sea desea compartir.**
Para solucionarlo intenté esto:
<meta property="fb:app_id" content="1316700985811427" />
<meta property="og:url" content="#URL_SITE_SPIP" />
<meta property="og:type" content="article" />
<meta name="author" content="PCMLE, #NOM_SITE_SPIP">
<meta name="twitter:card" content="summary" />
<meta name="twitter:site" content="@enmarcha_sem" />
<meta name="twitter:creator" content="@pcmle" />
<INCLURE{fond=inclure/head} />
<script type='text/javascript'>/*<![CDATA[*/(function(H){H.className=H.className.replace(/\bno-js\b/,'js')})(document.documentElement);/*]]>*/</script>
<INCLURE{fond=inclure/article,debut_principale=@#ID_ARTICLE,env,ajax} />
que incluye solo las etiquetas generales antes de la llamada de pagination. Incluyendo las estiquetas específicas dentro de
en las instrucciones incluidas:<BOUCLE_principale(ARTICLES) {pagination 1}{par date}>
<title>[(#TITRE|couper{80}|textebrut) - ][(#NOM_SITE_SPIP|textebrut)]</title>
<meta property="og:image" content="#URL_SITE_SPIP/[(#LOGO_ARTICLE|extraire_attribut{src})]" />
<meta property="og:image:url" content="#URL_SITE_SPIP/[(#LOGO_ARTICLE|extraire_attribut{src})]" />
<meta property="og:image:alt" content="#TITRE" />
<meta property="og:site_name" content="#NOM_SITE_SPIP - PCMLE" />
<meta property="og:title" content="#TITRE" />
<meta property="og:description" content="#INTRODUCTION{150|textebrut}" />
[<meta name="description" content="(#INTRODUCTION{150}|attribut_html)" />]
<meta name="twitter:image" content="#URL_SITE_SPIP/[(#LOGO_ARTICLE|extraire_attribut{src})]" />
<meta name="keywords" content="PCMLE, Ecuador, En Marcha,
<BOUCLE_motsA(MOTS?) {id_article} {par titre}>
#TITRE,
</BOUCLE_motsA>
" />
[<link rel="canonical" href="(#URL_ARTICLE|url_absolue{#URL_SITE_SPIP})" />]
pero pagination traslada la etiqueta
antes de title, es decir al inicio de pagination, incluyendo una . Facebook rastrea las etiquetas OpenGraph hasta por tanto, no llega a las etiquetas específicas Og del artículo, porque pagination las puso dentro de Body.Un desarrollo de pagination debería incluir esta particularidad que exige Facebook.