« Bouton like facebook valide w3c » : différence entre les versions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
(3 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 23 : | Ligne 23 : | ||
<script type="text/javascript" src="<?php echo $this->baseUrl();?>/www/js/fakeXFBML.js"></script> -> le plugin pour afficher le bouton valide W3c | <script type="text/javascript" src="<?php echo $this->baseUrl();?>/www/js/fakeXFBML.js"></script> -> le plugin pour afficher le bouton valide W3c | ||
<script type="text/javascript">$("#fb-root").fakeXFBML("like", {"layout":"button_count","href":"<?php echo SITE_PAGE; ?>","send":"false", "show_faces":"true", "width":"450"});</script> | <script type="text/javascript">$("#fb-root").fakeXFBML("like", {"layout":"button_count","href":"<?php echo SITE_PAGE; ?>","send":"false", "show_faces":"true", "width":"450"});</script> | ||
</pre> | |||
-> le script faisant appel au plugin fakeXFBML | -> le script faisant appel au plugin fakeXFBML | ||
---- | ---- | ||
Le View Helper pour Zend (à inclure dans le layout ou la vue) | Le View Helper pour Zend (à inclure dans le layout ou la vue) | ||
<pre> | |||
<?php | |||
class Zend_View_Helper_FacebookLike | |||
{ | |||
function facebookLike() | |||
{ | |||
//$fc = "<fb:like href=\"".SITE_PAGE."\" send=\"false\" layout=\"button_count\" width=\"450\" show_faces=\"true\"></fb:like>"; // plugin jquery pour le w3c | |||
$fc = "<div id=\"fb-root\"></div>";// avec le plugin | |||
return $fc; | |||
} | |||
} | |||
</pre> | |||
== méthode 2 == | == méthode 2 == | ||
meta facebook avec user agent | meta facebook avec user agent | ||
Ligne 52 : | Ligne 54 : | ||
<?php } ?> | <?php } ?> | ||
</pre> | </pre> | ||
dans le template placer | * dans le template placer avant le </body> | ||
<script src="<?php echo $this->baseUrl();?>/www/js/facebookValidXhtml.js" type="text/javascript" ></script> | <script src="<?php echo $this->baseUrl();?>/www/js/facebookValidXhtml.js" type="text/javascript" ></script> | ||
plugin JS | * plugin JS | ||
facebookValidXhtml.js | facebookValidXhtml.js | ||
// ------------------ | // ------------------ | ||
Ligne 78 : | Ligne 79 : | ||
fbObjectValidationObjects.reverse(); function findFBML(string, fbmlcomm) { var i = (string).indexOf(fbmlcomm); return i === -1 ? false : true; } var x = 0; while (x < fbObjectValidationObjects.length) { var fbVObjectNode = document.getElementsByTagName(fbObjectValidationObjects[x]); var l = new Array(); for(var i=0, ll=fbVObjectNode.length; i!=ll; l.push(fbVObjectNode[i++])); l.reverse(); var fbVObject = l; var i = 0; while (i < fbVObject.length) { var fbRObject = fbVObject[i].innerHTML; | fbObjectValidationObjects.reverse(); function findFBML(string, fbmlcomm) { var i = (string).indexOf(fbmlcomm); return i === -1 ? false : true; } var x = 0; while (x < fbObjectValidationObjects.length) { var fbVObjectNode = document.getElementsByTagName(fbObjectValidationObjects[x]); var l = new Array(); for(var i=0, ll=fbVObjectNode.length; i!=ll; l.push(fbVObjectNode[i++])); l.reverse(); var fbVObject = l; var i = 0; while (i < fbVObject.length) { var fbRObject = fbVObject[i].innerHTML; | ||
if(findFBML(fbRObject, '<!-- FBML ') != false) { var fbRObject = fbRObject.replace(/<!-- FBML /g, ""); var fbRObject = fbRObject.replace(/ FBML -->/g, ""); fbVObject[i].innerHTML = fbRObject;} i++; } x++; } | if(findFBML(fbRObject, '<!-- FBML ') != false) { var fbRObject = fbRObject.replace(/<!-- FBML /g, ""); var fbRObject = fbRObject.replace(/ FBML -->/g, ""); fbVObject[i].innerHTML = fbRObject;} i++; } x++; } | ||
</pre> | |||
* dans le viewhelper | |||
<pre> | |||
$fc = | |||
"<div id=\"fb-root\"> | |||
<span class=\"fbreplace\"> | |||
<!-- FBML <fb:like href=\"".SITE_PAGE."\" send=\"false\" layout=\"button_count\" width=\"70\" show_faces=\"true\"></fb:like> FBML --> | |||
</span> | |||
</div>"; | |||
</pre> | |||
[[category:Facebook]] [[category:Javascript]] | |||
Dernière version du 27 août 2024 à 12:12
méthode 1
placer dans la balise html
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr" xmlns:fb="http://www.facebook.com/2008/fbml">
meta facebook avec user agent
<?php if(stristr($_SERVER["HTTP_USER_AGENT"],'facebook')) { ?> <meta property="fb:app_id" content="id de l'application facebook" /> <meta property="og:title" content="titre de la page" /> <meta property="og:type" content="website" /> <meta property="og:url" content="url de la page avec tout les parametres" /> <meta property="og:description" content="description de la page" /> <meta property="og:image" content="http://lesite.com/image.png" /> <meta property='og:site_name' content='Le nom du site' /> <meta property="og:locale" content="fr_FR" /> <?php } ?>
Le javascript en fin de page avant le code du bouton Like Facebook
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script> <script type="text/javascript" src="http://connect.facebook.net/fr_FR/all.js#xfbml=1&appId=le numero de l'application"></script> <script type="text/javascript" src="<?php echo $this->baseUrl();?>/www/js/fakeXFBML.js"></script> -> le plugin pour afficher le bouton valide W3c <script type="text/javascript">$("#fb-root").fakeXFBML("like", {"layout":"button_count","href":"<?php echo SITE_PAGE; ?>","send":"false", "show_faces":"true", "width":"450"});</script>
-> le script faisant appel au plugin fakeXFBML
Le View Helper pour Zend (à inclure dans le layout ou la vue)
<?php class Zend_View_Helper_FacebookLike { function facebookLike() { //$fc = "<fb:like href=\"".SITE_PAGE."\" send=\"false\" layout=\"button_count\" width=\"450\" show_faces=\"true\"></fb:like>"; // plugin jquery pour le w3c $fc = "<div id=\"fb-root\"></div>";// avec le plugin return $fc; } }
méthode 2
meta facebook avec user agent
<?php if(stristr($_SERVER["HTTP_USER_AGENT"],'facebook')) { ?> <meta property="fb:app_id" content="id de l'application facebook" /> <meta property="og:title" content="titre de la page" /> <meta property="og:type" content="website" /> <meta property="og:url" content="url de la page avec tout les parametres" /> <meta property="og:description" content="description de la page" /> <meta property="og:image" content="http://lesite.com/image.png" /> <meta property='og:site_name' content='Le nom du site' /> <meta property="og:locale" content="fr_FR" /> <?php } ?>
- dans le template placer avant le </body>
<script src="<?php echo $this->baseUrl();?>/www/js/facebookValidXhtml.js" type="text/javascript" ></script>
- plugin JS
facebookValidXhtml.js // ------------------ // Copyright 2011 Kevin Lieser, kleaserarts - Mediendesign // info@ka-mediendesign.de, www.ka-mediendesign.de // ------------------
window.fbAsyncInit = function() { FB.init({appId: 'numero id app facebook', status: true, cookie: true, xfbml: true}); }; (function() { var e = document.createElement('script'); e.async = true; e.src = document.location.protocol + '//connect.facebook.net/fr_FR/all.js'; document.getElementById('fb-root').appendChild(e); }());
var fbObjectValidationObjects = new Array("div", "span", "p", "ul", "li");
fbObjectValidationObjects.reverse(); function findFBML(string, fbmlcomm) { var i = (string).indexOf(fbmlcomm); return i === -1 ? false : true; } var x = 0; while (x < fbObjectValidationObjects.length) { var fbVObjectNode = document.getElementsByTagName(fbObjectValidationObjects[x]); var l = new Array(); for(var i=0, ll=fbVObjectNode.length; i!=ll; l.push(fbVObjectNode[i++])); l.reverse(); var fbVObject = l; var i = 0; while (i < fbVObject.length) { var fbRObject = fbVObject[i].innerHTML; if(findFBML(fbRObject, '/g, ""); fbVObject[i].innerHTML = fbRObject;} i++; } x++; }
- dans le viewhelper
$fc = "<div id=\"fb-root\"> <span class=\"fbreplace\"> <!-- FBML <fb:like href=\"".SITE_PAGE."\" send=\"false\" layout=\"button_count\" width=\"70\" show_faces=\"true\"></fb:like> FBML --> </span> </div>";