Carnet Web de Bastien Jaillot

DotClear

Note publiée le .

Je poste souvent à propos de DotClear en ce moment, je crée donc une catégorie intitulée ainsi.

En ce moment, je phpise tout en cssisant pour rectifier un petit problème assez lourd à régler pour les catégories de liens. Il y a un bug avec ce thème du aux balises <h3>. Une heure que je suis dessus, j'ai la solution mais elle est pas encore implémentée proprement.

Quand j'aurais fini ça, il faudra que je poste cette solution sur le forum DotClear, que j'envoi les correctifs à Philippe puis que je mette tous mes posts qui parle de DotClear à jour. Ben je suis pas dans la merde moi...

Entretemps, faudra que j'aille voir si la piscine dépasse les 20 21° :p.

Le prepend

[PHP]
<? php
function linkList($category='<h3>%s</h3>',$block='<ul>%s</ul>',$item='<li>%s</li>')
{
	global $con, $blog;
 
	if (($rs_link = $con->select(
		' SELECT label, href, title, lang, rel FROM ' . $blog->t_link
		. '  ORDER BY position')) !== false) {
		$res = '';
		$toto = 0;
		
		while (!$rs_link->EOF()) {
			$label = $rs_link->f('label');
			$href  = $rs_link->f('href');
			$title = $rs_link->f('title');
			$lang  = $rs_link->f('lang');
			$rel = $rs_link->f('rel');
			
			if (! $label && ! $href) {
				$toto = 1;
				if ('' != $res) {
					$res2 = sprintf($block,$res);
				}
				if (!empty($res)) {
					$res3 .= sprintf($category,$cattitle,$res2);
				}
				$cattitle = $title;
				$res = '';
			} else {
				
				$link =
				'<a href="'.htmlspecialchars($href).'"'.
				((!$lang) ? '' : ' hreflang="'.htmlspecialchars($lang).'"').
				((!$title) ? '' : ' title="'.htmlspecialchars($title).'"').
				((!$rel) ? '' : ' rel="'.htmlspecialchars($rel).'"').
				'>'.
				htmlspecialchars($label).
				'</a>';
				
				$res .= sprintf($item,$link);
			}
			$rs_link->moveNext();
		}
		if ('' != $res) {
			$res2 = sprintf($block,$res);
			if (!$toto) {
				printf($res2);
			}
			else {
				$res3 .= sprintf($category,$cattitle,$res2);
				printf($block,$res3);
			}
		}
	}
}
?>

Le css

[CSS]
ul#menu ul ul{
	position: absolute;
  top:-5px;
  left:125px;
  z-index: 2;
}

Le template

[PHP]
<?php linkList('<li><a href="#">%1$s</a> %2$s</li>'); ?>