[Gelöst] Elessi Child Theme - Product archive not showing products on pagination
Dieses Thema ist gelöst. Hier finden Sie eine Beschreibung des Problems und der Lösung.
Problem: Es wurde festgestellt, dass die Pagination auf der Website fehlt und Fehlermeldungen im Zusammenhang mit dem Child Theme und WPML auftreten. Solution: In diesem Fall, trat das Problem durch falsch übersetzte Taxonomien für die Produkt-Sichtbarkeit auf. 1. Erstellen Sie eine Sicherungskopie Ihrer Datenbank, bevor Sie Änderungen vornehmen. 2. Überprüfen Sie unter WPML > Einstellungen > Taxonomien übersetzen, ob die Taxonomie für die Produkt-Sichtbarkeit auf 'übersetzbar' gesetzt ist. Wenn ja, führen Sie folgende SQL-Befehle in Ihrer Datenbank aus, um fehlerhafte Übersetzungen zu entfernen:
SELECT * FROM `wp_icl_translations` WHERE `element_type` = 'tax_product_visibility'
Entfernen Sie nun diese Einträge oder verwenden Sie dazu folgende Abfrage:
DELETE FROM `wp_icl_translations` WHERE `element_type` = 'tax_product_visibility'
3. Führen Sie nach dem Löschen der Einträge die Synchronisierung von Taxonomien für den Beitragstyp 'Produkt' unter WPML > Support > Fehlerbehebung durch.
Falls diese Lösung veraltet ist oder nicht auf Ihr Problem zutrifft, empfehlen wir Ihnen, ein neues Support-Ticket zu öffnen und die bekannten Probleme zu überprüfen. Stellen Sie außerdem sicher, dass Sie die neuesten Versionen Ihrer Themes und Plugins installiert haben. Für weitere Unterstützung besuchen Sie bitte unser Support-Forum.
Dies ist das technische Support-Forum für WPML – das mehrsprachige WordPress-Plugin.
Mitlesen können alle, doch nur WPML-Kunden können hier Fragen veröffentlichen. Das WPML-Team antwortet im Forum an 6 Tagen pro Woche, 22 Stunden am Tag.
Tut mir leid für die Verzögerung, aber das Troubleshooting Deiner Website war bislang leider recht mühsam.
Der Grund für das Verhalten ist mir leider weiterhin unklar - was jedoch sehr seltsam auf Deiner Website ist, dass die Pagination sogar bereits auf dem originalen Template fehlt und ich diese nur dann sehe, wenn ich den Customizer öffne:
versteckter Link
Das ist nur dann der Fall, wenn das Child Theme verwendet wird.
Zudem sehe ich unter Verwendung des Child Themes folgende Notice:
Notice: Die Funktion product_type wurde <strong>fehlerhaft</strong> aufgerufen. Produkteigenschaften sollten nicht direkt abgerufen werden. Backtrace: require('wp-blog-header.php'), require_once('wp-includes/template-loader.php'), include('/plugins/woocommerce/templates/taxonomy-product-cat.php'), wc_get_template, include('/themes/elessi-theme/woocommerce/archive-product.php'), do_action('nasa_get_content_products'), WP_Hook->do_action, WP_Hook->apply_filters, elessi_get_content_products, include('/themes/elessi-theme-child/includes/nasa-get-content-products.php'), wc_get_template, include('/themes/elessi-theme/woocommerce/content-product.php'), do_action('woocommerce_before_shop_loop_item'), WP_Hook->do_action, WP_Hook->apply_filters, nldx_out_of_stock_variations_loop, WC_Abstract_Legacy_Product->__get, wc_doing_it_wrong Weitere Informationen: <a href="https://wordpress.org/support/article/debugging-in-wordpress/">Debugging in WordPress (engl.)</a>. (Diese Meldung wurde in Version 3.0 hinzugefügt.) in D:\work\Local Sites\yeyeye\app\public\wp-includes\functions.php on line 5831
Das Problem mit dem Archiv an sich scheint aber ein Problem zwischen dem Elessi Theme und WPML zu sein. es verschwindet, wenn ich auf ein Standardtheme wechsel.
Kannst Du bitte das Elessi Theme in aktuellster Version auf folgender Test-Site installieren, damit wir es dort testen können?
Ein-Klick-Anmeldung: versteckter Link
Gib mir bitte auf diesem Ticket bescheid, sobald das Theme installiert wurde. Bitte verwende eine komplett frische Installation mit dem zip-Archiv des Hersteller sin aktuellster Version.
Ich kann das Problem leider bislang nicht alleine mit dem Theme, WooCommerce und WPML replizieren - es funktioniert hier wie erwartet.
Deshalb muss ich Dich leider um noch etwas Geduld bitten.
Ich werde weiter testen, ob sich das Problem auf meiner Test-Site unter Anwendung von Plugins oder dem Child Theme, welches Du auf Deiner Website verwendest, auf der Test-Site replizieren lässt und mich dann wieder bei Dir melden.
am Child Theme liegt es nicht, dies haben wir bereits getestet. Wenn man auf das Parent Theme wechselt und das Child Theme deaktiviert, tritt der Fehler weiterhin auf.
Ich habe nochmals auf der Kopie Deiner Website alleine mit Nasa Core, WPBakery WooCommerce WooCommerce Multilinugal und WPML Multilingual CMS und String Translation getestet und mich dabei auf das Verhalten des Pagination Links auf dem Produkt Archiv und die Anzahl der Produkte konzentriert.
Was in der Tat auf der Kopie Deiner Website nicht korrekt erscheint, ist dass sobald ich das Child Theme aktiviere die Pagination Links auf dem originalen Archiv verschwinden und ich deshalb nicht testen kann, wie sich das Archiv in Originalsprache verhält - eine URL wie versteckter Link führt hier zu einen 404 - soll bedeuten das originale Template verwendet keine Pagination und deshalb ist auch nicht zu erwarten, dass die Pagination auf der Übersetzung funktioniert.
Soll bedeuten, in Deiner Datei nasa-get-content-products.php, welche in den WooCommerce Product Content eingreift, verursacht anscheinend irgendetwas, dass die folgende WooCommerce Action Hook, welche die Pagination Links ausgibt, nicht korrekt ausgeführt wird:
do_action( 'woocommerce_after_shop_loop_item' );
versteckter Link
Dieses Problem scheint nun auf Deiner Live-Site bereits behoben zu sein, da die Pagination Links hier nun angezeigt werden.
Teste ich mir dem Parent Theme sehe ich auf beiden Archiven einen Produktanzahl von 16 Produkten unter /kategorie/kleider/ - die Pagination Links auf dem originalen Archiv sind nun vorhanden, es gibt aber nur 2 Seiten - auf dem übersetzen Archiv werden 9 Seiten angezeigt, auf welchen sich die 16 Produkte verteilen.
Warum es sich so verhält, ist mir leider weiterhin unklar, aber diese Verhalten sehe ich selbst dann, wenn ich die Kopie Deiner Website alleine mit dem Elessi Parent Theme, WooCommerce und WPML teste.
Auf der Test-Site sehe ich dieses Problem allerdings nicht.
Wenn ich auf das Twenty Twenty Theme wechsen die Pagination Links, nur mit dem Unterschied, dass erst dann unter /kategorie/kleider/ 28 Kleider erscheinen und unter /en/kategorie/dresses/ 143 Kleider gelistet werden.
Laut Produkte > Kategorien sollte es in dieser Kategorie eigentlich 147 deutsche Kleider und 108 englische Kleider geben.
Ich würde an diesem Punkt gerne versuchen die WPML und WCML Optionen zur Fehlerbehebung auf Deiner Website anzuwenden, welche die Taxonomien und Produkte synchroniseren und gglfs. vorhande Probleme in der Datenbank bereinigt.
WPML > Support > Fehlerbehebung
und
WooCommerce > WooCommerce Multilingual > Status > Fehlerbehebung
Kannst Du bitte ein Backup Deiner Live Site oder besser gar ein Staging anlegen, auf dem wir daran arbeiten können, um eine Lösung für dieses Problem zu finden?
Die WPML Optionen zur Fehlerbehebung lösen das Problem leider nicht.
Wie Du aktuell auf dem Staging sehen kannst, bleibt das Problem unter versteckter Link auch dann bestehen, wenn ich die Website ohne WPML teste.
Öffen ich den Customizer und editiere unter WooCommerce > Produktkatalog sehe ich alle Produkte (18 Seiten) - speichere ich die Einstellungen ab und gehe zurück aufs Front-End werden nur 2 Seiten angezeigt.
Das das original Archiv hier selbst ohne WPML nicht wie erwartet funktioniert, gehe ich davon aus, dass der Fehler in der Übersetzung eher den Ursprung in einem Fehler der Originalinhaltes hat - diese Problem scheint demnach nicht durch WPML verursacht zu sein.
Das Problem bleibt übrigens sogar dann bestehen, wenn ich die Website alleine mit WooCommerce und dem Elessi Theme teste, wie Du aktuell auf dem Staging sehen kannst.
Wenn das Twenty Twenty Two Theme verwendet wird, verschwindet das Problem.
das Problem bleibt NICHT bestehen, wenn WPML deaktiviert ist – vielleicht hast du unser Problem auch noch nicht richtig verstanden.
Auf der Stage werden unter Kleider aktuell genau die Produkte angezeigt, die angezeigt werden sollen. Der Shop ist so eingestellt, dass nur Artikel im Frontend ausgegeben werden, die auch lieferbar sind. Daher kommt der Unterschied von Artikelanzahl im Frontend und Artikelanzahl im Backend.
Es ging um die Unterschiede zwischen der deutschen und englischen Sprache, allerdings hat es ja anscheinend etwas mit dem Theme zu tun, wenn das Problem bei Storefront nicht auftaucht. Wir haben daher den Theme Autor kontaktiert.
Leider aber noch keine Rückmeldung erhalten.
Wir hatten uns von euch einen Hinweis erhofft, der vielleicht auch dem Theme Autor hilft.
ich habe nun selber eine Analyse vorgenommen, das Probleme hat definitiv NICHTS mit dem Theme zu tun.
Auch mit Storefront tritt es auf: versteckter Link (Alle 31 lieferbaren Artikel werden angezeigt) versteckter Link (Alle 143 Artikel werden angezeigt, auch die nicht lieferbaren)
Anscheinend berücksichtig WPML nicht die Lagereinstellung "Sichtbarkeit für „nicht vorrätig“" von WooCommerce, bei der Ausgabe der Artikel im Frontend für weitere Sprachen: versteckter Link
Das scheint das Problem zu sein.
Bitte behebt das Problem, ich denke es ist sehr offensichtlich jetzt.
Beste Grüße
Robert
PS: Ich verstehe ja, dass es für euch angenehmer ist, wenn das Problem nicht WPML zugeschrieben werden kann. Aber es macht euren Support auch leider wahnsinnig anstrengend, jedes Mal landen wir in dieser Sackgasse, wenn wir den WPML Support kontaktieren ...