Änderungen an archive-product.php funktionieren nicht

Lesezeit: 4 Minuten

Anderungen an archive productphp funktionieren nicht
Slevin

Ich versuche, das Standard-Woocommerce-Theme anzupassen, und das hat bisher gut funktioniert. Ich habe alle Vorlagendateien aus kopiert /plugins/woocommerce/templates zu /mytheme/woocommerce und die Dateien angepasst.

Aber wenn ich etwas ändere archive-product.php nichts passiert? Ich habe sogar versucht, dies in den Kerndateien anzupassen (/plugins/woocommerce/templates/archive-product.php) aber ich funktioniert nicht.

Ich möchte die Klasse der ändern h1 Üerschrift: <h1 class="page-title"><?php woocommerce_page_title(); ?></h1>.

Also schaute ich auf alle woocommerce-Vorlagendateien, die Klasse page-title tritt nur in dieser einen Datei auf (um zu verhindern, dass die falsche Datei bearbeitet wird).

Bearbeiten:

Im Detail möchte ich das in diesem Pfad verwendete Thema anpassen: http://example.com/product-category/mycategory

  • Haben Sie ein Caching-Plugin auf Ihrer Website installiert?

    Benutzer1409909

    3. Mai 2013 um 7:47 Uhr

  • Nein, ich habe keine Cache-Plugins installiert.

    – Slevin

    3. Mai 2013 um 8:00 Uhr

Ich habe alle oben genannten Lösungen ausprobiert, ohne Erfolg. Egal was ich tat, die archive-product.php wurde überhaupt nicht verwendet. Stattdessen verwendeten die meisten Woocommerce-Seiten page.php aus meinem Theme.

Die Lösung für mich bestand darin, die Unterstützung von Themen hinzuzufügen … Was eine Weile her ist, seit ich Woocommerce verwendet habe, also habe ich das völlig vergessen. Aber nachdem ich die folgende Zeile zu meiner Datei functions.php hinzugefügt habe, wird jetzt archive-product.php verwendet (/mytheme/woocommerce/archive-product.php) und ich kann es aktualisieren, wie ich es sollte.

add_theme_support('woocommerce');

  • danke für diesen einblick. In meinem Fall hatte ich Probleme mit einem angewendeten Filter, nicht einmal mit dem Überschreiben einer Vorlage. Es funktionierte nicht, bis ich die WC-Theme-Unterstützung hinzufügte. seltsam..

    – hupe31

    15. Mai 2018 um 13:39 Uhr


  • Funktioniert gut! Danke.

    – moreirapontocom

    5. Juli 2018 um 23:55 Uhr

  • Ich bin mir nicht sicher, wie ich das übersehen habe, aber danke für die Erinnerung!

    – Kerker_140

    29. Januar 2019 um 9:52 Uhr

  • OMG! Das habe ich ganz vergessen! =PPP Ich hatte Probleme und jetzt ist die gesamte Struktur behoben! Der WooCommerce-Ordner in meinem Theme funktioniert jetzt großartig und auch die Body-Klasse ist zurück. Beispiel: Drücken von Strg+u, um den Quellcode anzuzeigen. Ich kann jetzt alle Seitentypen sehen, die der Körperklasse hinzugefügt wurden! Vielen Dank!

    – Thiago

    1. April 2019 um 16:22 Uhr

  • Wenn Sie die Designunterstützung hinzufügen, entscheidet sich WooCommerce dafür, immer eine Seitenleiste in Ihrem Design anzuzeigen, auch wenn Sie keine haben. Wenn Sie keine Designunterstützung hinzufügen, gibt es keine Möglichkeit, den Kategoriebeschreibungs-Hook zu entfernen. Tolles Stück Software.

    – Markus

    11. Oktober 2019 um 6:19 Uhr


Scheint, dass dies NOCH ein Problem in Woocommerce ist. Für alle, die hier landen, funktionierte die folgende Lösung für mich ab Version 2.1.6.

Anscheinend liegt das Problem daran, dass die Funktion woocommerce_content() die falsche Seite für Archivinhalte ausgibt.

Ich habe Folgendes verwendet, um es zu umgehen:

ersetze woocommerce_content() in woocommerce.php durch:

if ( is_singular( 'product' ) ) {
 woocommerce_content();
}else{
//For ANY product archive.
//Product taxonomy, product search or /shop landing
 woocommerce_get_template( 'archive-product.php' );
}

Gutschrift: Lösung gefunden Hier

  • Es ist beabsichtigt, siehe hier docs.woothemes.com/document/…

    – Dekan Oakley

    26. Februar 2015 um 23:14 Uhr

  • Diese Lösung ist jetzt veraltet – woocommerce_content() existiert nicht in woocommerce.php

    – Landschaft erschaffen

    28. Januar 2016 um 20:03 Uhr

  • Nein, woocommerce_content() noch in der neusten Version vorhanden.

    – Raubvogel

    12. Juni 2020 um 7:41 Uhr

  • Das ist auch 2020 noch ein Thema. Danke für deine Antwort, habe sie nach zwei Tagen Suche gefunden. Du bist unglaublich!

    – valio_sg

    4. September 2020 um 17:55 Uhr

  • Bevor Sie diese Lösung verwenden, versuchen Sie, Unterstützung für Woocommerce in der Datei functions.php hinzuzufügen, wie @IAteYourKitten unten zeigt.

    – Alex Chebotarsky

    21. September 2020 um 10:04 Uhr

So habe ich meine repariert:

  1. Lösche woocommerce.php in deinem Theme-Ordner.
  2. Kopieren Sie den TEMPLATE-Ordner in das Woocommerce-Plugin-Verzeichnis, fügen Sie ihn in Ihren THEME-Ordner ein und benennen Sie ihn in Woocommerce um.
  3. Öffnen Sie den Ordner, den Sie gerade umbenannt haben, gehen Sie zum Shop-Ordner und bearbeiten Sie wrapper-start.php und wrapper-end.php.

  • Wow … das hat funktioniert, widerspricht aber allem gemäß der WooCommerce-Dokumentation zum Hinzufügen von Kompatibilität zu einem Thema. Ist das ein Fehler? Dies scheint eine beängstigende Arbeit zu sein, funktioniert aber definitiv.

    – RCNeil

    7. Dezember 2013 um 23:53 Uhr

Überprüfen Sie für andere, die hier suchen, den Pfad. Es ist zum Beispiel nicht /mytheme/woocommerce/templates/archive-product.php aber nur /mytheme/woocommerce/archive-product.php. Ich musste @Talk nerdy nicht auf meinen oder einen anderen Patch anwenden, damit es funktioniert.

1647380347 757 Anderungen an archive productphp funktionieren nicht
Elad Schoham

Sie müssen die Datei “taxonomy-product_cat.php” bearbeiten und eine bedingte is_product_category( ‘mycategory’ ) hinzufügen.

  1. Öffnen Sie Ihren Themenordner und fügen Sie einen neuen Unterordner namens “woocommerce” hinzu.
  2. Kopieren Sie die Dateien „archive-product.php“ und „taxonomy-product_cat.php“ aus /plugins/woocommerce/templates in den woocommerce-Unterordner Ihres Themes.
  3. Benennen Sie “archive-product.php” in “archive-mycategory.php” um (oder was auch immer Sie möchten, dies wird die Vorlagendatei für die Kategorie sein).
  4. Öffnen Sie “taxonomy-product_cat.php” und packen Sie die wc_get_template( 'archive-product.php' ); mit:
    if (is_product_category( 'mycategory' )){
        wc_get_template( 'archive-mycategory.php' );
    }  else {
        wc_get_template( 'archive-product.php' );
    }

1004720cookie-checkÄnderungen an archive-product.php funktionieren nicht

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy