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



 

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V   1 2 >
Открыть тему
Тема закрыта
> Категория и подкатегории на Wordpress.
andriyf
andriyf
Topic Starter сообщение 29.8.2010, 10:53; Ответить: andriyf
Сообщение #1


Бывалый
****

Группа: User
Сообщений: 337
Регистрация: 1.6.2009
Из: UANET
Поблагодарили: 99 раз
Репутация:   20  


Всем привет! Прошу вашей помощи. Проблема следующая: есть главная категория "Наука", делящаяся на многие подкатегории, например, "астрономия", "география", "робототехника", и так далее. Обычно, каждая статья публикуется в соответствующую подкатегорию. Но в результате на сайте получаю статью и в соответствующей подкатегории и в главной "Наука". Категория "Наука" выходит свалкой разных новостей, что не очень красиво для посетителя. В категории "Наука" публикую статьи, какие не подпадают под ни одну из подкатегорий.

Пожалуйста, помогите, кто может! В знак благодарности, постовой из сайта Тиц 20, ПР 2.
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Вентилятор
Вентилятор
сообщение 29.8.2010, 12:07; Ответить: Вентилятор
Сообщение #2


покупаю хорошие проекты
******

Группа: Active User
Сообщений: 1801
Регистрация: 8.8.2010
Поблагодарили: 601 раз
Репутация:   106  


судя по всему, ты указываешь сразу две рубрики, когда добавляешь новость. например, стоит галочка и на "науке" (главная катагория), и на "робототехнике" (подчиненная катагория). поставь только на робототехнике, и всё.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
genjnat
genjnat
сообщение 29.8.2010, 12:18; Ответить: genjnat
Сообщение #3


Старожил
******

Группа: Active User
Сообщений: 2276
Регистрация: 29.10.2008
Из: Одесса
Поблагодарили: 1025 раз
Репутация:   114  


(Вентилятор @ 29.8.2010, 11:07) *
судя по всему, ты указываешь сразу две рубрики, когда добавляешь новость. например, стоит галочка и на "науке" (главная катагория), и на "робототехнике" (подчиненная катагория). поставь только на робототехнике, и всё.


Не, он все верно указывает, просто в ВП такая вот ерунда с подкатегориями, и ничего вы с этим не сделаете.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
andriyf
andriyf
Topic Starter сообщение 29.8.2010, 15:05; Ответить: andriyf
Сообщение #4


Бывалый
****

Группа: User
Сообщений: 337
Регистрация: 1.6.2009
Из: UANET
Поблагодарили: 99 раз
Репутация:   20  


Похоже никак нельзя, уже перепробовал и разные коды! Что ж, наверное недостаток CMS Wordpress? Или вы как думаете???
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Вентилятор
Вентилятор
сообщение 29.8.2010, 15:14; Ответить: Вентилятор
Сообщение #5


покупаю хорошие проекты
******

Группа: Active User
Сообщений: 1801
Регистрация: 8.8.2010
Поблагодарили: 601 раз
Репутация:   106  


тогда только код шаблона править


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Martin_STIK
Martin_STIK
сообщение 29.8.2010, 15:20; Ответить: Martin_STIK
Сообщение #6


Бывалый
****

Группа: User
Сообщений: 446
Регистрация: 4.2.2008
Поблагодарили: 108 раз
Репутация:   19  


Используй плагин Advanced Category Excluder.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
WolfVad
WolfVad
сообщение 29.8.2010, 15:53; Ответить: WolfVad
Сообщение #7


Частый гость
**

Группа: User
Сообщений: 69
Регистрация: 26.1.2008
Из: Омск
Поблагодарили: 16 раз
Репутация:   2  


Это шаблон страницы категории который делает то что вам надо, выводит посты только той категории в которой сейчас находитесь, без дочерних. Код написал понятно, там только кол-во выводимых постов надо выставить своё.
Прикрепленный файл  category.php ( 2,23 килобайт ) Кол-во скачиваний: 100
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
andriyf
andriyf
Topic Starter сообщение 29.8.2010, 17:02; Ответить: andriyf
Сообщение #8


Бывалый
****

Группа: User
Сообщений: 337
Регистрация: 1.6.2009
Из: UANET
Поблагодарили: 99 раз
Репутация:   20  


(WolfVad @ 29.8.2010, 15:53) *
Это шаблон страницы категории который делает то что вам надо, выводит посты только той категории в которой сейчас находитесь, без дочерних. Код написал понятно, там только кол-во выводимых постов надо выставить своё.
Прикрепленный файл  category.php ( 2,23 килобайт ) Кол-во скачиваний: 100


почему-то не могу скачать sad.gif

(Martin_STIK @ 29.8.2010, 15:20) *
Используй плагин Advanced Category Excluder.


я так понял плагин Advanced Category Excluder связан с виджетами, а тема не поддерживает виджеты
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
WolfVad
WolfVad
сообщение 29.8.2010, 17:05; Ответить: WolfVad
Сообщение #9


Частый гость
**

Группа: User
Сообщений: 69
Регистрация: 26.1.2008
Из: Омск
Поблагодарили: 16 раз
Репутация:   2  


Странно...
Вот код который надо вставить в category.php
<?php get_header(); ?>
        
    <div id="content_box">

        <div id="content" class="archive">
<?php
global $query_string;
$string = urldecode($query_string);
$has_mbstring = extension_loaded('mbstring') ||@dl(PHP_SHLIB_PREFIX.'mbstring.'.PHP_SHLIB_SUFFIX);

if ($has_mbstring) {
    $cat_name = mb_substr($string, mb_strrpos($string,'category_name=') + 14, mb_strlen($string) - 1);
    if (mb_strpos($cat_name,'&')) {
        $cat_name = mb_substr($cat_name, 0, mb_strrpos($cat_name,'&') - 1);
    }
    if (mb_strrpos($cat_name,'/')) {
        $cat_name = mb_substr($cat_name, mb_strrpos($cat_name,'/') + 1, mb_strlen($string) - 1);
    }
} else {
    $cat_name = substr($string, strrpos($string,'category_name=') + 14, strlen($string) - 1);
    if (strpos($cat_name,'&')) {
        $cat_name = substr($cat_name, 0, strrpos($cat_name,'&') - 1);
    }
    if (strrpos($cat_name,'/')) {
        $cat_name = substr($cat_name, strrpos($cat_name,'/') + 1, strlen($string) - 1);
    }
}
$id = get_cat_id($cat_name);
$args = array(
    'category__in' => array($id),
    'showposts'=>20,
    'caller_get_posts'=>1
);
$cat_query = new WP_Query($args);
?>
        <?php if ($cat_query->have_posts()) : ?>

            <?php $post = $posts[0]; // Hack. Set $post so that the_date() works. ?>
    
            <?php /* If this is a category archive */ if (is_category()) { ?>                
            <h1>Entries Tagged '<?php echo single_cat_title(); ?>' &darr;</h1>
            
            <?php /* If this is a monthly archive */ } elseif (is_month()) { ?>
            <h1>Entries from <?php the_time('F Y'); ?> &darr;</h1>

            <?php } ?>

            <?php while ($cat_query->have_posts()) : $cat_query->the_post(); ?>
            
            <h2><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a></h2>
            <div class="entry">
                <?php the_content("Continue reading &rarr;"); ?>
            </div>
            <p class="post_meta"></p>
                    
            <?php endwhile; wp_reset_query(); ?>
            
            <?php include (TEMPLATEPATH . '/navigation.php'); ?>

        <?php else : ?>
        
            <h2>Welp, we couldn't find that...try again?</h2>
            <p class="post_date">* * *</p>
            <div class="entry">
                <?php include (TEMPLATEPATH . '/searchform.php'); ?>
            </div>
            
        <?php endif; ?>
            
        </div>
    
        <?php get_sidebar(); ?>
        
    </div>
        
<?php get_footer(); ?>
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
andriyf
andriyf
Topic Starter сообщение 29.8.2010, 17:11; Ответить: andriyf
Сообщение #10


Бывалый
****

Группа: User
Сообщений: 337
Регистрация: 1.6.2009
Из: UANET
Поблагодарили: 99 раз
Репутация:   20  


(WolfVad @ 29.8.2010, 17:05) *
Странно...
Вот код который надо вставить в category.php
<?php get_header(); ?>
        
    <div id="content_box">

        <div id="content" class="archive">
<?php
global $query_string;
$string = urldecode($query_string);
$has_mbstring = extension_loaded('mbstring') ||@dl(PHP_SHLIB_PREFIX.'mbstring.'.PHP_SHLIB_SUFFIX);

if ($has_mbstring) {
    $cat_name = mb_substr($string, mb_strrpos($string,'category_name=') + 14, mb_strlen($string) - 1);
    if (mb_strpos($cat_name,'&')) {
        $cat_name = mb_substr($cat_name, 0, mb_strrpos($cat_name,'&') - 1);
    }
    if (mb_strrpos($cat_name,'/')) {
        $cat_name = mb_substr($cat_name, mb_strrpos($cat_name,'/') + 1, mb_strlen($string) - 1);
    }
} else {
    $cat_name = substr($string, strrpos($string,'category_name=') + 14, strlen($string) - 1);
    if (strpos($cat_name,'&')) {
        $cat_name = substr($cat_name, 0, strrpos($cat_name,'&') - 1);
    }
    if (strrpos($cat_name,'/')) {
        $cat_name = substr($cat_name, strrpos($cat_name,'/') + 1, strlen($string) - 1);
    }
}
$id = get_cat_id($cat_name);
$args = array(
    'category__in' => array($id),
    'showposts'=>20,
    'caller_get_posts'=>1
);
$cat_query = new WP_Query($args);
?>
        <?php if ($cat_query->have_posts()) : ?>

            <?php $post = $posts[0]; // Hack. Set $post so that the_date() works. ?>
    
            <?php /* If this is a category archive */ if (is_category()) { ?>                
            <h1>Entries Tagged '<?php echo single_cat_title(); ?>' &darr;</h1>
            
            <?php /* If this is a monthly archive */ } elseif (is_month()) { ?>
            <h1>Entries from <?php the_time('F Y'); ?> &darr;</h1>

            <?php } ?>

            <?php while ($cat_query->have_posts()) : $cat_query->the_post(); ?>
            
            <h2><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a></h2>
            <div class="entry">
                <?php the_content("Continue reading &rarr;"); ?>
            </div>
            <p class="post_meta"></p>
                    
            <?php endwhile; wp_reset_query(); ?>
            
            <?php include (TEMPLATEPATH . '/navigation.php'); ?>

        <?php else : ?>
        
            <h2>Welp, we couldn't find that...try again?</h2>
            <p class="post_date">* * *</p>
            <div class="entry">
                <?php include (TEMPLATEPATH . '/searchform.php'); ?>
            </div>
            
        <?php endif; ?>
            
        </div>
    
        <?php get_sidebar(); ?>
        
    </div>
        
<?php get_footer(); ?>


Вот это да, тема не имеет файла category.php что делать?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
2 страниц V   1 2 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

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

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Адаптивная вёрстка и натяжка на Wordpress, DLE, Joomla и др. Создание мобильных версий.
Хороший код с оптимизацией по скорости. Сайты и лендинги "под ключ
11 Nell 1053 Вчера, 15:21
автор: Nell
Открытая тема (нет новых ответов) Как включить автоматическое обновление для плагинов WordPress и самого движка?
0 Telnor 370 10.12.2017, 13:27
автор: Telnor
Открытая тема (нет новых ответов) Адаптация сайтов под мобильные устройства, качественная кроссбраузерная верстка, работа с Wordpress
PSD to HTML, натяжка макетов на Wordpress, адаптивная верстка
28 anton_ber 5153 6.12.2017, 13:39
автор: anton_ber
Открытая тема (нет новых ответов) Пропали блоки в продуктах Wordpress
6 mxxx 945 6.12.2017, 11:22
автор: mxxx
Горячая тема (нет новых ответов) Услуги по CMS Wordpress, DLE, Joomla!. Правки, ремонт, настройка.
Редактирование и правки. Низкие цены.
142 contex1 64992 5.12.2017, 12:13
автор: contex1


 



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