Алфавитный указатель рубрик

[Удален]
735

Добрый день!

Мне требуется вывести рубрики в алфавитном указателе. Необходимо сделать так, чтобы при нажатии на букву алфавита, открывались рубрики начинающиеся именно с данной буквы.

Вот, что у меня вышло:

<ul class="menu_alfavit">

<?php
$l1 = '';
$args = array(
'type' => 'post'
,'orderby' => 'name'
,'hide_empty' => 0
,'child_of' =>6
,'order' => 'ASC' );
$categories = get_categories( $args );
foreach($categories as $category) {
$l2 = mb_substr($category->name, 0, 1, 'utf-8');
if ($l1 != $l2) {
$l1 = $l2;
echo '<li><div onclick="ima()"><a href="#">' . $l1 . '</a></div></li>';
}
echo '<div class="test" style="display:none"><a href="' . get_category_link($category->term_id) . '">' . $category->name . '</a></div>';
} ?>
</ul>

function ima(){

jQuery(".test").fadeIn(500);
}

В таком случае, при нажатии на одну из букв, открываются сразу все категории.

Подскажите пожалуйста, а как сделать, чтобы открывался категории нажатой буквы ?

[Удален]
#1

Если кому понадобится, вот рабочий вариант:

<?php

$l1 = '';
$args = array(
'type' => 'post'
,'orderby' => 'name'
,'hide_empty' => 0
,'child_of' =>6
,'order' => 'ASC' );
$categories = get_categories( $args );
foreach($categories as $category) {
$l2 = mb_substr($category->name, 0, 1, 'utf-8');
if ($l1 != $l2) {
$l1 = $l2;
//echo($l2);
echo '<li><div class="test1" title="'.$l1.'" onclick="ima(this)"><a href="#">' . $l1 . '</a></div></li>';
}
echo '<div title="'.$l1.'" class="show_cats" style="display:none"><a href="' . get_category_link($category->term_id) . '">' . $category->name . '</a></div>';
} ?>

function ima(litera){

jQuery(".show_cats").fadeOut(100);
var litera = $(litera).attr('title');
jQuery("[title='"+ litera +"']").fadeIn(500);
}

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий