SPIP et le XHTML
Présentation
Afin de respecter les standards XHTML, nous avons modifié certains fichiers du moteur de SPIP. Voici une liste non exhaustive de corrections pour la version 1.7.2.
Attention, les modifications suivantes touchent à des fichiers sensibles de SPIP. Assurez-vous par conséquent d’effectuer une sauvegarde de vos fichiers préalablement et de bien suivre les indications données.
Rappel
Quelques petits conseils de validation :
Tous vos tags html doivent impérativement être en minuscule.
L’ouverture et la fermeture de vos tags doivent être impérativement symétriques. Evitez par exemple :
<form><div> </form></div>
vos input, meta, br, link et img nottament doivent se terminer par un / : <br /> <img src.... /> <meta .... />...
N’oubliez pas de fermer vos tags
L’attribut "alt" est impératif sur les images, "title", optionnel mais recommandé.
Si vous devez mettre des images en background, préferrez de loin le css que le html.
Encadrez les valeurs des attributs de vos tags html par des doubles ou simples quotes.
Faites valider vos pages en utilisant le script fourni par le w3C : http://validator.w3.org en cochant la case "Source"
Modifications
En gras apparaissent les noms des fichiers, et en italique les lignes correspondantes à changer sur une version 1.7.2 de Spip brute de fonderie.
inc-calcul-squel.php3
Ligne 1065 :
$auteurs[] = "<A HREF=\"mailto:$email_auteur\">$nom_auteur</A>";
Par
$auteurs[] = "<a href=\"mailto:$email_auteur\">$nom_auteur</a>";
ecrire/inc_texte.php3
Ligne 46-48 :
if (!tester_variable('puce', "<img class='spip_puce' src='puce.gif' alt='-'
border='0'> ")) {
tester_variable('puce_rtl', "<img class='spip_puce'
src='puce_rtl.gif' alt='-' border='0'> ");
}
Par
if (!tester_variable('puce', "<img class='spip_puce' src='puce.gif' alt='-'
border='0' /> ")) {
tester_variable('puce_rtl', "<img class='spip_puce'
src='puce_rtl.gif' alt='-' border='0' /> ");
}
ecrire/lang/spip_fr.php3
Ligne 463 :
'icone_evolution_visites' => 'Évolution des visites<br>@visites@
visites',
Par
'icone_evolution_visites' => 'Évolution des visites<br />@visites@
visites',
Ligne 677 :
'info_erreur_systeme2' => '<b>Le disque dur est peut-être plein, ou la
base de données endommagée. <br>
Par
'info_erreur_systeme2' => '<b>Le disque dur est peut-être plein, ou la
base de données endommagée. <br />
Ligne 679 :
ou contactez votre hébergeur.</font><br></b>',
Par
ou contactez votre hébergeur.</font><br /></b>',
Ligne 780 :
perdue et votre site ne fonctionnera plus.<br>{{Réinstallez les
Par
perdue et votre site ne fonctionnera plus.<br />{{Réinstallez les
Ligne 1514 :
'texte_proposer_publication' => 'Lorsque votre article est
terminé,<br> vous pouvez proposer sa publication.',
Par
'texte_proposer_publication' => 'Lorsque votre article est
terminé,<br /> vous pouvez proposer sa publication.',
Ligne 1529 :
'texte_referencement_automatique' => '<b>Référencement
automatisé d\'un site</b><br>Vous pouvez référencer
rapidement un site Web en indiquant ci-dessous l\'adresse URL
désirée, ou l\'adresse de son fichier backend. SPIP va
récupérer automatiquement les informations concernant ce site
(titre, description...).',
Par
'texte_referencement_automatique' => '<b>Référencement
automatisé d\'un site</b><br />Vous pouvez référencer
rapidement un site Web en indiquant ci-dessous l\'adresse URL
désirée, ou l\'adresse de son fichier backend. SPIP va
récupérer automatiquement les informations concernant ce site
(titre, description...).',
Ligne 1596-1598
différentes. <br><img
src=\'puce.gif\'> La plus
simple consiste à rechercher
uniquement dans les
titres et les descriptifs des articles.
<br><img src=\'puce.gif\'>
Par
différentes. <br /><img
src=\'puce.gif\' /> La plus
simple consiste à rechercher
uniquement dans les
titres et les descriptifs des articles. <br
/><img src=\'puce.gif\' />
inc-forum.php3
Ligne 85
._T('forum_vous_inscrire')."<br>\n";
Par
._T('forum_vous_inscrire')."<br />\n";
Lignes 313/14
$ret .= "<B><label
for='mot$id_mot'>$titre_mot</label></B><br>";
if (strlen($descriptif_mot)
> 0) $ret .= "$descriptif_mot<br>";
Par
$ret .= "<B><label
for='mot$id_mot'>$titre_mot</label></B><br />";
if (strlen($descriptif_mot)
> 0) $ret .= "$descriptif_mot<br />";
fichier inc-login.php3
Ligne 145 :
if (strlen($message_login) > 0) echo "<br>$message_login<br>\n";
Par
if (strlen($message_login) > 0) echo "<br />$message_login<br />\n";
Ligne 159 :
echo ">\n";
Par
echo " />\n";
Ligne 166 :
"document.write('".addslashes(_T('login_login'))." <b>$login</b> <br><font
size=\\'2\\'>[<a
href=\\'spip_cookie.php3?cookie_admin=non&url=".rawurlencode($clean_link->ge
tUrl())."\\'>".addslashes(_T('login_autre_identifiant'))."</a>]</font>');\n"
.
Par
"document.write('".addslashes(_T('login_login'))." <b>$login</b> <br /><font
size=\\'2\\'>[<a
href=\\'spip_cookie.php3?cookie_admin=non&url=".rawurlencode($clean_link->ge
tUrl())."\\'>".addslashes(_T('login_autre_identifiant'))."</a>]</font>');\n"
.
Ligne 167 :
echo "<input type='hidden' name='session_login_hidden' value='$login'>";
Par
echo "<input type='hidden' name='session_login_hidden' value='$login' />";
Ligne 175 :
echo "<label><b>"._T('login_login2')."</b><br></label>";
Par :
echo "<label><b>"._T('login_login2')."</b><br /></label>";
Ligne 176 :
echo "<input type='text' name='session_login' class='forml' value=\"$login\"
size='40'>\n";
Par :
echo "<input type='text' name='session_login' class='forml' value=\"$login\"
size='40' />\n";
Ligne 179 :
echo "<br><br>\n<label><b>"._T('login_pass2')."</b><br></label>";
Par :
echo "<br /><br />\n<label><b>"._T('login_pass2')."</b><br /></label>";
Ligne 180-3 :
echo "<input type='password' name='session_password' class='forml'
value=\"\" size='40'>\n";
echo "<input type='hidden' name='essai_login' value='oui'>\n";
echo "<br> <input type='checkbox'
name='session_remember' value='oui' id='session_remember'$rester_checked> ";
Par :
echo "<input type='password' name='session_password' class='forml'
value=\"\" size='40' />\n";
echo "<input type='hidden' name='essai_login' value='oui' />\n";
echo "<br /> <input type='checkbox'
name='session_remember' value='oui' id='session_remember'$rester_checked />
";
Ligne 187-190 :
echo "<input type='hidden' name='url' value='$url' />\n";
echo "<input type='hidden' name='session_password_md5'
value=''>\n";
echo "<input type='hidden' name='next_session_password_md5'
value=''>\n";
echo "<div align='right'><input type='submit'
class='spip_bouton' name='submit'
value='"._T('bouton_valider')."'></div>\n";
Par
echo "<input type='hidden' name='url' value='$url' />\n";
echo "<input type='hidden' name='session_password_md5'
value='' />\n";
echo "<input type='hidden' name='next_session_password_md5'
value='' />\n";
echo "<div align='right'><input type='submit'
class='spip_bouton' name='submit' value='"._T('bouton_valider')."'
/></div>\n";
Ligne 199 :
echo "<form name='form_login' action='$action' method='post'>\n";
Par
echo "<form name='form_login' action='$action' method='post' />\n";
Ligne 202 :
echo "<label><b>"._T('login_login2')."</b><br></label>";
Par
echo "<label><b>"._T('login_login2')."</b><br /></label>";
Ligne 203-206 :
echo "<input type='text' name='var_login' class='forml'
value=\"\" size='40'>\n";
echo "<input type='hidden' name='var_url' value='$url'>\n";
echo "<div align='right'><input type='submit'
class='spip_bouton' name='submit'
value='"._T('bouton_valider')."'></div>\n";
Par :
echo "<input type='text' name='var_login' class='forml'
value=\"\" size='40' />\n";
echo "<input type='hidden' name='var_url' value='$url'
/>\n";
echo "<div align='right'><input type='submit'
class='spip_bouton' name='submit' value='"._T('bouton_valider')."'
/></div>\n";
Ligne 215 :
echo "<form action='spip_cookie.php3' method='get'>";
Par :
echo "<form action='spip_cookie.php3' method='get' />";
Lignes 218-221 :
echo "<input type='hidden' name='essai_auth_http'
value='oui'> ";
$url = $cible->getUrl();
echo "<input type='hidden' name='url' value='$url'>\n";
echo "<div align='right'><input type='submit' name='submit'
class='spip_bouton' value='"._T('login_sans_cookiie')."'></div>\n";
Par :
echo "<input type='hidden' name='essai_auth_http'
value='oui' /> ";
$url = $cible->getUrl();
echo "<input type='hidden' name='url' value='$url' />\n";
echo "<div align='right'><input type='submit' name='submit'
class='spip_bouton' value='"._T('login_sans_cookiie')."' /></div>\n";
ecrire/inc_documents.php3
Ligne 149 :
$vignette = "<img src='$fichier_vignette' border=0";
Par
$vignette = "<img src='$fichier_vignette' border='0'";
Ligne 157 :
$vignette .= ">";
Par
$vignette .= " />";
Ligne 257 :
$vignette = "<img src='$url_fichier_vignette' border=0";
Par
$vignette = "<img src='$url_fichier_vignette' border='0'";
Ligne 266-271 :
$vignette .= ">";
else {
if ($align)
$vignette .= " align='$align'
hspace='5' vspace='3' alt='' />";
else
$vignette .= " align='middle' alt=''
/>";
Par
$vignette .= " />";
else {
if ($align)
$vignette .= " align='$align'
hspace='5' vspace='3' />";
else
$vignette .= " align='middle' />";
Ligne 653 :
echo "<a href='$fichier'><img src='$icone' border=0
width='$largeur_icone' align='top' height='$hauteur_icone'></a>\n";
Par
echo "<a href='$fichier'><img src='$icone'
border='0' width='$largeur_icone' align='top' height='$hauteur_icone'
/></a>\n";
Ligne 1017 :
echo "<a href='$fichier'><img src='$icone'
border=0 width='$largeur_icone' align='top' height='$hauteur_icone'></a>\n";
Par :
echo "<a href='$fichier'><img src='$icone'
border='0' width='$largeur_icone' align='top' height='$hauteur_icone'
/></a>\n";
|