Comment afficher une liste de catégories à la manière de mediawiki?
1 réponses
- votes
Vouspouvezjouer avec Walkerpourpersonnaliser la sortieen une divisionpar lettres. Apartir de là,c'est une question de CSSpour réaliser leformatage des colonnes.
Aperçu rapide de Walker:
La classe class Walker_Alphabetized_Category extends Walker_Category {
var $letter = '';
function start_el(&$output, $category, $depth, $args) {
$current_letter = strtoupper(substr($category->name,0,1));
if( empty($this->letter) ) {
$this->letter = $current_letter;
$output .= "<li>{$current_letter}<ul>";
}
elseif( $this->letter != $current_letter ) {
$output .= "</ul></li>";
$this->letter = $current_letter;
$output .= "<li>{$current_letter}<ul>";
}
parent::start_el(&$output, $category, $depth, $args);
}
}
echo '<ul>';
wp_list_categories(array(
'hierarchical' => false,
'orderby' => 'name',
'title_li' => '',
'walker' => new Walker_Alphabetized_Category(),
));
echo '</ul>';
You can play with Walker to customize output into being split by letters. From there it is matter of CSS to achieve column formatting.
Quick take on Walker:
class Walker_Alphabetized_Category extends Walker_Category {
var $letter = '';
function start_el(&$output, $category, $depth, $args) {
$current_letter = strtoupper(substr($category->name,0,1));
if( empty($this->letter) ) {
$this->letter = $current_letter;
$output .= "<li>{$current_letter}<ul>";
}
elseif( $this->letter != $current_letter ) {
$output .= "</ul></li>";
$this->letter = $current_letter;
$output .= "<li>{$current_letter}<ul>";
}
parent::start_el(&$output, $category, $depth, $args);
}
}
echo '<ul>';
wp_list_categories(array(
'hierarchical' => false,
'orderby' => 'name',
'title_li' => '',
'walker' => new Walker_Alphabetized_Category(),
));
echo '</ul>';
Je voudrais reproduire sur Wordpress lemême comportement demediawiki quandil s'agit d'afficher les articles d'une certaine catégorie (avec un ordre alphabétique,en colonneset en utilisant lespremières lettresen gras commetitres de section).Pensez-vous que c'estpossible? Si oui,commentpourrais-jefaire cela?
Actuellement,j'utilise unblog wordpress comme cahier de laboratoireet j'aimerais y ajouter lesbons côtés d'un wiki.J'ai déjà les révisions des articlesmais cetype de vue de catégorieest unplus queje voudrais ajouter.C'est l'une desfonctionnalités quime rend difficile de choisirentre les deux applications.
Merci d'avancepour votre aide.