Wordpress links widget validation erreurs

Après avoir migré mon blog sous Wordpress, j’ai vérifié si il était toujours valide XHTML / CSS. Je me suis aperçu que par défaut, le widget links attribuait à la balise <li> le même id à chaque fois, ce qui forcément n’est pas valide…
Après quelques recherches, j’ai trouvé un bout de code à insérer dans le fichier functions.php du thème installé, qui permet d’avoir un nouveau widget conforme aux normes w3c. En détail, au lieu d’avoir id=”links” sur tous les liens, on a: id=”linkcat-19″, id=”linkcat-20″, etc. Voici le code à insérer :
function widget_my_links($args) { global $wp_db_version; extract($args, EXTR_SKIP); if ( $wp_db_version < 3582 ) { // This ONLY works with li/h2 sidebars. get_links_list(); } else { $before_widget = preg_replace('/id="[^"]*"/','id="%id"', $before_widget); wp_list_bookmarks(array( 'title_before' => $before_title, 'title_after' => $after_title, 'category_before' => $before_widget, 'category_after' => $after_widget, 'show_images' => true, 'class' => 'linkcat widget' )); } } if ( function_exists('register_sidebar_widget') ) register_sidebar_widget(__('My Links'), 'widget_my_links');
Au passage, wp-syntax, un très bon plugin pour afficher du code.


