1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

woocommerce Kategorien / Unterkatergorien und wie die Produkte angezeigt werden

Dieses Thema im Forum "Onlineshop mit WordPress" wurde erstellt von dune1982, 11. Dezember 2014.

  1. dune1982

    dune1982 Member

    Registriert seit:
    6. August 2014
    Beiträge:
    17
    Zustimmungen:
    0
    Hallo Leute ich bin ein wenig am Verzweifeln.
    Ich baue gerade einen Onlineshop mit woocommerce. Nun habe ich zb. folgende Kategorien: Kategorie A mit der Unterkategorie B. Es befinden sich in beiden Kategorien Produkte. Wenn nun ein Kunde auf Kategorie A klickt werden ihm sofort die Produkte der Kategorie A und auch B angezeigt. Ich möchte aber das der Kunde in der Kategorie A nur die Produkte der Kategorie A sieht, geht er in die Unterkategorie B dann sieht er nur die Produkte der Unterkategorie.

    Dies ist wichtig da es sich bei den Unterkategorien jeweils um abwandlungen des Produktes der Überkategorie handelt.

    Was muss ich einstellen? Habe mitlerweile alles an Anzeigeeinstellungen ausprobiert oder benötige ich dafür ein extra plugin?
     
  2. Franz F

    Franz F New Member

    Registriert seit:
    11. Dezember 2014
    Beiträge:
    4
    Zustimmungen:
    0
    Probier mal unter woocommerce im Reiter Produkte die Punkte Shop-Seitenanzeige und Standard Kategorieanzeige anzupassen.
     
  3. dune1982

    dune1982 Member

    Registriert seit:
    6. August 2014
    Beiträge:
    17
    Zustimmungen:
    0
    Wenn es doch nur so einfach wäre ;) das habe ich natürlich schon probiert. Produkte anzeigen = es werden wirklich nur Produkte angezeigt; Unterkategorien anzeigen = es werden nur Unterkategorien angezeigt ; Beides = steht ja oben was passiert.
     
  4. djarzyna

    djarzyna Well-Known Member

    Registriert seit:
    20. März 2013
    Beiträge:
    104
    Zustimmungen:
    0
    Ist nichts mit einstellen, Plugin dafür kenne ich auch nicht. Kannst du coden? Dann wäre eine Lösung, die Query für die Produkt-Archiv-Seiten zu ändern (in archive-product.php):

    <?php
    /**
    * The Template for displaying product archives, including the main shop page which is a post type archive.
    *
    * @author WooThemes
    * @package WooCommerce/Templates
    * @version 2.0.0
    */

    if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly

    get_header();

    /**
    * Prevent products from subcategories from showing up on product category pages
    */
    if ( ! is_shop() ) {

    global $wp_query;

    $term = get_term_by( 'slug', get_query_var($wp_query->query_vars['taxonomy']), $wp_query->query_vars['taxonomy']);
    $args = array_merge( $wp_query->query_vars, array
    (
    'post_type' => 'product',
    'tax_query' => array(array(
    'taxonomy' => 'product_cat',
    'field' => 'slug',
    'terms' => $term->slug,
    'include_children' => 0
    )
    )
    )
    );

    query_posts( $args );

    }

    Dann der Rest...

    Die Änderung natürlich nicht in der Originaldatei, sondern in einer Kopie in deinem Theme.

    CU, Dirk
     
  5. mensmaximus

    mensmaximus Well-Known Member

    Registriert seit:
    24. Juli 2014
    Beiträge:
    8.857
    Zustimmungen:
    437
  6. djarzyna

    djarzyna Well-Known Member

    Registriert seit:
    20. März 2013
    Beiträge:
    104
    Zustimmungen:
    0
    Völlig richtig. Das oben widergegebene Snippet stammt allerdings aus einem Projekt, wo ich ohnehin das gesamte Template umschreiben musste, da konnte ich den notwendigen Code also auch direkt ins Template schreiben. Danke jedenfalls für deine Ergänzung.
     
  7. dune1982

    dune1982 Member

    Registriert seit:
    6. August 2014
    Beiträge:
    17
    Zustimmungen:
    0
    Vielen Dank für die Antworten.

    Leider kann ich noch nicht wirklich coden, habe ne ungefähre Ahnung. Habe aber ein wenig Erfahrung mit Delphi, also ne gewisse Grundlage ist da.

    Ich habe das mal ausprobiert, schaut auch recht gut aus jedoch werden mir die Unterkategorien dann nicht mehr angezeigt und es steht fett Suchergebnisse oben auf der Seite.

    Habe das so gemacht:

    <?php
    /**
    * The Template for displaying product archives, including the main shop page which is a post type archive.
    *
    * Override this template by copying it to yourtheme/woocommerce/archive-product.php
    *
    * @author WooThemes
    * @package WooCommerce/Templates
    * @version 2.0.0
    */

    if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly

    get_header( 'shop' ); ?>






    <?php

    ab hier habe ich eingefügt

    /**
    * Prevent products from subcategories from showing up on product category pages
    */
    if ( ! is_shop() ) {

    global $wp_query;

    $term = get_term_by( 'slug', get_query_var($wp_query->query_vars['taxonomy']), $wp_query->query_vars['taxonomy']);
    $args = array_merge( $wp_query->query_vars, array
    (
    'post_type' => 'product',
    'tax_query' => array(array(
    'taxonomy' => 'product_cat',
    'field' => 'slug',
    'terms' => $term->slug,
    'include_children' => 0
    )
    )
    )
    );

    query_posts( $args );

    }

    ab hier wieder Original

    /**
    * woocommerce_before_main_content hook
    *
    * @hooked woocommerce_output_content_wrapper - 10 (outputs opening divs for the content)
    * @hooked woocommerce_breadcrumb - 20
    */
    do_action( 'woocommerce_before_main_content' );
    ?>
     
    #7 dune1982, 15. Dezember 2014
    Zuletzt bearbeitet: 15. Dezember 2014
  8. dune1982

    dune1982 Member

    Registriert seit:
    6. August 2014
    Beiträge:
    17
    Zustimmungen:
    0
    Gibt es noch eine andere möglichkeit oder kann man es mir etwas genauer erklähren? Denn richtig fuktioniert hat es leider nicht.
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden