Nur eine Kategorie anzeigen lassen (Portfolio)

  • Hallo,
    ich habe ein Problem damit, auf einer Portfolio-Seite nur eine bestimmte Kategorie anzeigen zu lassen. Das ist sicher ein Anfängerproblem... ich kriegs aber seit Stunden nicht hin und bin am Verzweifeln. Wäre sehr dankbar für einen Tipp, wie ich die Kategorie ID 25 abfragen kann und alle anderen Kategorien ausschließe. Untenstehend der Code. DANKE für jeden Tipp!

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Ja, sowas hab ich schon versucht, aber ich mach immer irgendwas falsch mit Syntax oder so. Wo genau muß ich das reingeben (und vor allem wie?) DANKE!

  • Das wäre dann also so?
    <?php get_category( $thisCat = get_category(30);
    print_r($thisCat);) ?>

    Aber wo muß das genau hin / was muss dafür raus? Hab bissl rumprobiert, bekomme aber immer errors, weil ich garantiert alles falsch mache. bin ein echter php-dummie...:-(

  • Hallo, ich habe genau das gleiche Problem.
    Lade in meine page-blog.php die loop-blog.php rein, diese sieht wie folgt aus:

    PHP
    <!-- NEWS -->
    <?php             $category = get_option('blog_exclude_categories');            $category = explode(',', $category);            if ($category) {              $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;              $post_per_page = 4; // -1 shows all posts              $post_per_page = get_option('blog_items_per_page'); // -1 shows all posts              $do_not_show_stickies = 1; // 0 to show stickies              $args=array(                  'category' => 1,                'category__not_in' => $category,                'orderby' => 'post_date',                'order' => 'DESC',                'paged' => $paged,                'posts_per_page' => $post_per_page,                'caller_get_posts' => $do_not_show_stickies,              );              $temp = $wp_query;  // assign orginal query to temp variable for later use                 $wp_query = null;              $wp_query = new WP_Query($args);               if( have_posts() ) :                 while ($wp_query->have_posts()) : $wp_query->the_post(); ?>                <?php endwhile; ?>
    <div class="row news">            <?php $blog_related_posts = get_option('blog_related_posts'); // 0 = display, 1 = not display    if($blog_related_posts == 0){ ?>    <?php wp_reset_query();    query_posts(array ('posts_per_page=4') );    if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>    <div class="three columns">        <a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><h4><?php the_title(); ?></h4></a>        <small><?php the_time('j. F Y'); ?></small>    </div><!-- three columns -->    <?php endwhile; else: _e("Leider ergab Ihre Suche keine Ergebnisse.", 'flowthemes'); endif; wp_reset_query(); ?><?php } ?>                        <?php else : ?><h2 class="center"><?php _e('Nicht gefunden', 'flowthemes'); ?></h2>    <p class="center"><?php _e('Leider ergab Ihre Suche keine Ergebnisse.', 'flowthemes'); ?></p><?php endif; $wp_query = $temp; //reset back to original query}  // if ($category)?>              </div><!-- row news --><?php /* Start loop */ ?><?php while (have_posts()) : the_post(); ?>  <?php roots_post_before(); ?>    <?php roots_post_inside_before(); ?>    <div class="row start">                <?php                $args = array( 'cat' => 1, 'numberposts' => 2, 'order' => 'DESC', 'orderby' => 'post_date' );                $postslist = get_posts( $args );                foreach ($postslist as $post) :  setup_postdata($post); ?>         <div class="row single">            <h2 class="sepa"><?php the_title(); ?></h2>             <div class="row inner">                  <div class="four columns">                    <?php the_content(); ?>                 </div><!-- four columns -->                            <div class="client-url">                    Link: <?php echo get_post_meta($post->ID, 'Link', true); ?>                </div><!-- client-url -->                <div class="eight columns thumb">                    <?php if (has_post_thumbnail()) {                          the_post_thumbnail();                    } ?>                </div><!-- eight columns -->            </div><!-- row inner -->                                </div><!-- row single -->         <?php endforeach; ?>        </div><!-- row start -->    <?php roots_post_inside_after(); ?>  <?php roots_post_after(); ?><?php endwhile; /* End loop */ ?>

    Jetzt möcht ich aber nur die Kategorie 'News' anzeigen lassen, welche die ID #1 hat, gleichzeitig soll die Kategorie mit der ID #148 ausgeschlossen werden. Habe es mit allen erdenklichen Methoden versucht

    PHP
    'category' => 1

    ,

    PHP
    'cat' => 1

    , etc. aber es tut sich leider nichts.

    Wäre Euch wirklich sehr sehr dankbar für eine hilfreiche Antwort, weil ich auf codex.wordpress.org auch nichts passendes gefunden habe bzw. nicht wusste, wie ich das in meinen Code einbauen könnte.

    Danke!

  • wirdnix: Mache aus dem Code aus dem ersten Posting mal das hier:

  • PHP
    function meinhome( $query ) {
        if ( $query->is_home() && $query->is_main_query() ) {
            $query->set( 'cat', '1' );
        }
    }
    add_action( 'pre_get_posts', 'meinhome' );

    solch Funktion würde genügen wenn auf der Home Seite zb nur die kategorie Allgemein (hier ID 1) angezeigt werden soll.

    gibt man als ID parameter zb '1,-3' an, werden alle Beiträge kategorie 1 angezeigt, ausser sie sind auch 3 zugeordnet.

    Einbau der Funktion entweder als eigene Plugindatei oder in die function.php deines Themas.

    Wordpress weil es spass macht, besonders beim WordPress Meetup in Linz

  • Hallo derheimwerker,

    danke für den Code! Funktioniert leider nicht so wie gedacht, nun steht auf der Seite (als Text) [FONT=Verdana]$thisCat = get_category(25); print_r($thisCat); exit;
    Und er zeigt immer noch alle Kategorien. Hmmm. Aber danke trotzdem für Deine Mühe! Muß noch bissl weitersuchen...Wenn jemandem noch was einfällt, wäre ich sehr dankbar.
    LG!
    [/FONT][COLOR=#555555][FONT=Verdana]
    [/FONT][/COLOR]

  • in zumindest deinen ersten code wo es um portfolio geht, wird nicht die standard category genutzt sonder es wird eigene taxonomie angelegt, und diese zur verwirrung mit $cats verwendet,
    daher spricht natürlich der Filter get_category nicht an

    daher bei meinem Beispiel die Query mit Tax Parameter filtern https://codex.wordpress.org/Class_Referenc…nomy_Parameters

    Wordpress weil es spass macht, besonders beim WordPress Meetup in Linz

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!