Iframes et référencement
De Wiki.
L'utilisation d'iframes est parfaitement compatible avec le CMS.
On utilise le mot réservé awsiframe pour nommer les iframes dans les sites Adéquat'WEBSITE.
Optimisation du référencement des pages des iframes
Le système est librement inspiré de la gestion facebook des iframes.
Pour chaque page chargée dans l'iframe on met à jour le hash de l'adresse de la page principale.
A chaque événement onLoad de la page principale on compare l'adresse mentionnée dans son hash et celle effectivement chargée dans l'iframe ; et au besoin on recharge la bonne page dans l'iframe.
Pour exemple, les scripts déployés pour le site courant naturel [1].
Script sur le onLoad de la page principale :
function resize_iframe(){ sHashUrl = location.hash.substr(1); sIframeUrl = window.awsiframe.document.location.href.replace(/[htps]{4,5}:\/\/[^\/]+/gi,''); if (sHashUrl!=""){ if (sHashUrl != sIframeUrl){ window.awsiframe.document.location.href = sHashUrl; } } else{ location.hash = sIframeUrl; } //find the height of the internal page var the_height=getWindowHeight(); //change the height of the iframe document.getElementById('awsiframe').height= the_height; }
Script sur le onLoad des pages de l'iframe :
function checkIframe(){ var sHomeUrl = "/content/courantnaturel/accueil.php"; var sCurrentUrl = "/"+getAccessPath(); if (this.document.location.href.indexOf("/content/") > 0){ if (this.name == "awsiframe"){ //todo bene if (sHomeUrl != sCurrentUrl){ window.top.document.location.hash = sCurrentUrl; } } else{ window.top.document.location.href = "/#"+sCurrentUrl; } } else { // on est en backoffice } }