Hallo, heute habe ich durch Zufall festgestellt das von ca 1000 Artikeln die im Backend aktiv sind etwa 60 Artikel zu wenig im Frontend angezeigt werden. Die fehlenden Artikel sind in unterschiedlichen Kategorien angelegt. Um die fehlenden Artikel anzuzeigen, brauchte ich nur, ohne etwas zu ändern, auf die Detailanzeige gehen, auf Artikel speichern klicken und den Cache leeren. Danach waren alle Artikel wieder da.
Da das sehr arbeitsaufwendig ist alle Artikel einzeln zu kontrollieren, such ich nach einer Möglichkeit das einfacher zu gestalten. Vielleicht ein Plugin welches die aktiven Backendartikel mit dem Frontend vergleicht und dann die entsprechenden Differenzen auswirft.
Gruß Volker
Es gibt in der Datenbank zwei Tabellen mit „aktiv“.
s_articles als Wert 0 und 1
s_articles_details als Wert 0 und 1
Es kann „passieren“ dass einer von beiden nur aktiv ist. Dann wird es nicht angezeigt.
Wie kann man das herausfinden: Mit einer Datenbankabfrage die folgendes berechnet
2 - tabelleA - tabelleB
Im Idealfall sollte „0“ rauskommen für aktive artikel, „2“ für nicht-aktive Artikel. Alle die „1“ als Ergebnis haben sind betroffen (Oder sind inaktive Varianten-Artikel)
Warum tritt der Fehler auf: Weil jemand im Backend in der „Artikel-Übersicht“ die Artikel aktiv oder inaktiv setzt. Dann kommt als Ergebnis 1. Und dann gibt es Probleme mit dem Cache. Wenn es in der Detail-Ansicht gespeichert wird und der Cache gelöscht wird, ist der Artikel wieder aktiv.
SELECT
sad.ordernumber,
2 - sa.active - sad.active AS artikelstatus
FROM s_articles AS sa
LEFT JOIN s_articles_details AS sad ON sad.articleID = sa.id
Besten Dank für die Antwort. Das leuchtet ein.
Gruß Volker