X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

> Горизонтальное меню WP (рубрики), Сортировка по ID
Чеснок
Чеснок
Topic Starter сообщение 9.12.2010, 23:32; Ответить: Чеснок
Сообщение #1


Вкурил, что для вывода категорий в определённом порядке необходимо прописать wp_list_categories('orderby=name&include=4,5,7,1')

но как это всё приминить к своей ситуации не пойму. В файле functions.php у меня по этому поводу написано:

/* horizontal menu */
function art_menu_items()
{
    global $artThemeSettings;
    
    if ('Pages' === $artThemeSettings['menu.source'])
    {
        art_print_homepage();
        
        add_action('get_pages', 'art_menu_get_pages_filter');
        add_action('wp_list_pages', 'art_menu_list_pages_filter');
        
        wp_list_pages('title_li=&sort_column=menu_order');
        
        remove_action('wp_list_pages', 'art_menu_list_pages_filter');
        remove_action('get_pages', 'art_menu_get_pages_filter');
    }
    else
    {
        add_action('get_terms', 'art_menu_get_terms_filter');
        add_action('wp_list_categories', 'art_menu_wp_list_categories_filter');
        
        wp_list_categories('title_li=');
        
        remove_action('wp_list_categories', 'art_menu_wp_list_categories_filter');
        remove_action('get_terms', 'art_menu_get_terms_filter');
    }
}
/* end horizontal menu */

/* horizontal menu filters */
function art_menu_get_pages_filter($pages)
{
    global $artThemeSettings;
    art_move_frontpage($pages);
    $artThemeSettings['menu.blogID'] = art_blogID($pages);
    $artThemeSettings['menu.activeID'] = art_active_pageID($pages);
    if (!$artThemeSettings['menu.showSubmenus'])
    {
        art_remove_subpage($pages);
    }
    $artThemeSettings['menu.topIDs'] = art_top_pageIDs($pages);
    return $pages;
}

function art_menu_list_pages_filter($output)
{
    global $artThemeSettings;
    
    $pref ='page-item-';
    
    if($artThemeSettings['menu.topIDs'])
    {
        foreach($artThemeSettings['menu.topIDs'] as $id)
        {
            $output = preg_replace('~<li class="([^"]*)\b('
                . $pref
                . $id
                . ')\b([^"]*)"><a ([^>]+)>([^<]*)</a>~',
                '<li class="$1$2$3"><a $4>'
                . $artThemeSettings['menu.topItemBegin']
                . '$5'
                . $artThemeSettings['menu.topItemEnd']
                . '</a>', $output, 1);
        }
    }
    $frontID = null;
    $blogID = null;
    
    if('page' == get_option('show_on_front'))
    {
        $frontID = get_option('page_on_front');
        $blogID = $artThemeSettings['menu.blogID'];
    }
    
    if ($frontID)
    {
        $output = preg_replace('~<li class="([^"]*)\b('
            . $pref . $frontID
            . ')\b([^"]*)"><a href="([^"]*)" ~',
            '<li class="$1$2$3"><a href="'
            . get_option('home')
            .'" ', $output, 1);
    }
    
    $activeID = $artThemeSettings['menu.activeID'];
    
    if (is_home() && $blogID)
    {
        $activeID = $blogID;    
    }
    
    if ($activeID)
    {
        $output = preg_replace('~<li class="([^"]*)\b('
            .$pref .$activeID. ')\b([^"]*)"><a ~',
            '<li class="$1$2$3"><a class="active" ', $output, 1);
    }
    
    return $output;
}

function art_menu_get_terms_filter($terms)
{
    global $artThemeSettings;
    
    $artThemeSettings['menu.activeID'] = art_active_catID($terms);
    
    if (!$artThemeSettings['menu.showSubmenus'])
    {
        art_remove_subcat($terms);
    }
            
    $artThemeSettings['menu.topIDs'] = art_top_catIDs($terms);

    return $terms;
}

function art_menu_wp_list_categories_filter($output)
{
    global $artThemeSettings;
    $pref ='cat-item-';
    if($artThemeSettings['menu.topIDs'])
    {
        foreach($artThemeSettings['menu.topIDs'] as $id)
        {
            
            $output = preg_replace('~<li class="([^"]*)\b('
                . $pref . $id
                . ')\b([^"]*)"><a ([^>]+)>([^<]*)</a>~',
                '<li class="$1$2$3"><a $4>'
                . $artThemeSettings['menu.topItemBegin']
                . '$5'
                . $artThemeSettings['menu.topItemEnd']
                . '</a>', $output, 1);
            
        }
    }
    if($artThemeSettings['menu.activeID'])
    {
        $output = preg_replace('~<li class="([^"]*)\b('
            . $pref . $artThemeSettings['menu.activeID']
            .')\b([^"]*)"><a ~',
            '<li class="$1$2$3"><a class="active" ',
             $output, 1);
    }
    return $output;
}
/* end horizontal menu filters*/
.

Сообщение отредактировал Чеснок - 9.12.2010, 23:41


--------------------
Забанен за мошенничество
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
 
Открыть тему
Ответов (1 - 1)
White_Lion
White_Lion
сообщение 10.12.2010, 0:20; Ответить: White_Lion
Сообщение #2


В начале файла строка wp_list_categories('title_li=');
+ можно использовать плагины для сортировки, что бы не мучиться каждый раз с редактированием кода: my-category-order

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыПеренести меню
1 Викторио_mw 1452 28.8.2018, 0:10
автор: TimurR
Открытая тема (нет новых ответов) Необходимо разрезать и установить Меню для группы ВКонтакте
2 boltuk 3398 4.12.2017, 14:44
автор: tezoro
Открытая тема (нет новых ответов) Помогите с меню - переделать в выпадающее
1 lepota 1128 4.12.2017, 13:29
автор: yury_mw
Открытая тема (нет новых ответов) Слайдер под меню
0 Olya_Poy 4633 29.11.2017, 11:09
автор: -garmoni-
Открытая тема (нет новых ответов) На разных разрешениях меню выглядит по разному
0 SPiar 4812 28.9.2017, 17:45
автор: -korotkov-


 



RSS Текстовая версия Сейчас: 28.3.2024, 14:14
Дизайн