Wordpress - премахване на публикации от multiple categories

waldes

Well-Known Member
Ровя си във вп-то, но се оказва, че когато на дадени постове са зададени 2+ категории, то няма начин да се махнат на bulk излишните, така че да останат постовете само в една категория. Могат само да се добавят.
Някой да знае решение:wink:
 
От: Wordpress - премахване на публикации от multiple categories

Триене? `
 
От: Wordpress - премахване на публикации от multiple categories

Не може с триене. Всичките постове са набутани в дефаултната категория от общо две. Въпросът е как да разкарам излишните от дефаултната.
 
От: Wordpress - премахване на публикации от multiple categories

Не мога да разбера какво всъщност искаш.
Да изтриеш постовете или да им смениш категорията?
 
От: Wordpress - премахване на публикации от multiple categories

Скрий ги да не се показват. Потърси работещи варианти на hide или exclude post from category archives wordpress.
Има и готови плъгини за скриване на категории. ID на дефулнатата сигурно е 1. Вариантите за archive.php вероятно ще работят и за category и index-a

След...
if(have_posts())

Пробвай да поставиш:
global $wp_query;
$args = array_merge( $wp_query->query, array( 'category_name' => 'blogs' ) );
query_posts( $args );

Или нещо такова:
if(is_archive()){$wp_query->set('cat','-ID'); query_posts(''); }
 
От: Wordpress - премахване на публикации от multiple categories

Не мога да разбера какво всъщност искаш.
Да изтриеш постовете или да им смениш категорията?
Да им сменя категорията на определени постове, за да не се дубира един и същи пост.


Пример:
Имаме 2 категории (category 1 (default) & category 2) и 577 поста общо в целия сайт.
В дефаултната категория 1 са всичките 577 поста.
В категория 2 са 100 от тези 577 поста. Въпросът е как да махна от дефаултната категория тези 100 поста, които са в категория 2 като крайният резултат трябва да е:
В категория 1- 477 поста, в категория 2 - 100 поста.
С bulk edit могат да се добавят определен бадж от постове към дадена категория, но не могат да се махат.
 
От: Wordpress - премахване на публикации от multiple categories

Можеш да редактираш ръчно постовете които са в две категории един по един като избереш само една категория, става бързо
 
От: Wordpress - премахване на публикации от multiple categories

Можеш да редактираш ръчно постовете които са в две категории един по един като избереш само една категория, става бързо
Стига бе! 500 поста на ръка :D


PHP:
<pre>
<?php
include 'wp-load.php';

$category1 = 5;
$category2 = 6;

$args = array(
    'category__and' => array($category1, $category2) );

$the_query  = new WP_Query( $args );

while ( $the_query->have_posts() ) {
    $the_query->the_post();
    echo '<li>' . $post->ID . '</li>';
    
    $my_post = array(
            'ID'=> $post->ID,
            'post_category' => array($category2),
    );
    
    wp_update_post($my_post);    
}

?>
</pre>

Попълваш си
$category1
$category2
с твоите стойности от следващата заявка
Код:
SELECT * FROM wp_terms


Това го записваш в главната директория на WP като c.php. Извикваш mysite.com/c.php, триеш файла и си готов.
 
От: Wordpress - премахване на публикации от multiple categories

Пращаш в коша с плъгин като този duplicate content-a.
Ако изтриеш категория 2 (с името) се предполага, че постовете ще станат default категория.
С SQL заявка ги пращаш в новосъздадената със същото име категория 2 или за по-сигурно измени в категория 3.
Върни повтарящите от коша и ги направи в желаната категория пак със заявка от рода на: всички постове от еди коя си категория да отидат в еди коя си, по ID или име, предполагам ще стане.

П.С. Офф, глупости! То нямаш еднакви постове, а всички са различни в 2 категории. Сори.
 

Горе