Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Modul für "leere Kategorien ausblenden"

    hpzeller

    • Experte
    • Beiträge: 4.130
    • Geschlecht:
    Re: Modul für "leere Kategorien ausblenden"
    Antwort #15 am: 15. Mai 2020, 02:09:01
    @hpzeller
    Kann bestätigen was CHESSBASE schreibt, auch bei meinem Test keine Änderungen im Shop.
    [...]

    Wie sieht es aus wenn du die Datei includes/extra/modules/categories_listing/categories_content/remove_empty_categories.php auch noch in den Ordner includes/extra/default/categories_content/ kopierst?

    Gruss
    Hanspeter

    karsta.de

    • Experte
    • Beiträge: 3.082
    Re: Modul für "leere Kategorien ausblenden"
    Antwort #16 am: 15. Mai 2020, 09:20:29
    Hallo Hanspeter,
    das funktioniert nun auch für weitere Unterkategorie.  :thx:

    Ich habe das Ganze mal zusammengepackt und wie in den vorherigen Beiträgen, mit der Variable 'SHOW_CATEGORIES_NOT_EMPTY' verknüpft, so dass alles über den Eintrag (Schalter) in der templates/DEIN_TEMPL/config/config.php an bzw. ausgeschaltet werden kann. Wie auch in Antwort #2 und Antwort #11.

    @CHESSBASE
    Mit deiner Einstellung wird bei mir gar kein Kategorie-Listing der Unterkategorien angezeigt. Hier geht es aber darum nur Kategorien auszublenden die keinen Content und keine Artikel haben.
    $TR_COLS steht für MAX_DISPLAY_CATEGORIES_PER_ROW = Anzahl Kategorien pro Zeile
    admin > Konfiguration > Max. Werte > Anzahl Kategorien pro Zeile

    Damit arbeite ich gar nicht, weil ich sowas mittels CSS umsetze.

    BG Karsta

    sb_cbo-do

    • Fördermitglied
    • Beiträge: 464
    Re: Modul für "leere Kategorien ausblenden"
    Antwort #17 am: 15. Mai 2020, 09:22:37
    Hallo Hanspeter,

    nachdem ich die Datei remove_empty_categories.php in den Ordner includes/extra/default/categories_content/ kopiert habe, wurde nur noch eine Leere-/Weißeseite angezeigt.

    Der folgende Fehler steht dann in der Errorlog des Shops.
    [2020-05-15 09:17:30]   [error]   [modified]   [pid:13503]   Call to undefined function xtc_count_products_in_category() in File: /shop/includes/extra/default/categories_content/remove_empty_categories.php on Line: 5   {}   {}

    Nach dem ich die Dateien von Karsta benutzt habe, war der Fehler mit der Weißenseite weg. Ich habe die } am ende übersehen.

    Nun aber doch eine frage, die Kategorien werden aber nur ausgeblendet, wenn keine Artikel in der Kategorie vorhanden sind.
    Habt ihr noch eine Idee, wie man die Kategorie ausblenden kann, wenn alle Artikel in der Kategorie deaktiviert sind?

    Gruß,

    Sven

    hpzeller

    • Experte
    • Beiträge: 4.130
    • Geschlecht:
    Re: Modul für "leere Kategorien ausblenden"
    Antwort #18 am: 15. Mai 2020, 11:31:21
    Hallo Hanspeter,

    nachdem ich die Datei remove_empty_categories.php in den Ordner includes/extra/default/categories_content/ kopiert habe, wurde nur noch eine Leere-/Weißeseite angezeigt.

    Der folgende Fehler steht dann in der Errorlog des Shops.
    [2020-05-15 09:17:30]   [error]   [modified]   [pid:13503]   Call to undefined function xtc_count_products_in_category() in File: /shop/includes/extra/default/categories_content/remove_empty_categories.php on Line: 5   {}   {}
    [...]

    Um dieses Problem grundsätzlich zu vermeiden kann man in der Datei includes\extra\modules\categories_listing\categories_content\remove_empty_categories.php
    un d der Datei includes\extra\default\categories_content\remove_empty_categories.php den Code mit diesem Code ersetzen.

    Code: PHP  [Auswählen]
    <?php

    // Leere Kategorien entfernen
      require_once (DIR_FS_INC.'xtc_count_products_in_category.inc.php');
      if (xtc_count_products_in_category($categories['categories_id']) < 1) array_pop($categories_content);
      if (empty($categories_content)) unset($categories_content);

    Gruss
    Hanspeter

    sb_cbo-do

    • Fördermitglied
    • Beiträge: 464
    Re: Modul für "leere Kategorien ausblenden"
    Antwort #19 am: 15. Mai 2020, 13:19:38
    Danke Hanspeter,

    jetzt funktioniert der Code auch ohne }.

    Gruß,

    Sven

    CHESSBASE

    • Schreiberling
    • Beiträge: 264
    • Geschlecht:
    Re: Modul für "leere Kategorien ausblenden"
    Antwort #20 am: 15. Mai 2020, 13:35:06
    Hallo!
    Habe ich das richtig verstanden, man jetzt mit dem neuen Code die remove_empty_categories.php in die beiden oben genannten Verzeichnisse übertragen soll? Das habe ich nämlich probiert, aber ich hab immer noch diese leere Kategorie da stehen.

    [ Für Gäste sind keine Dateianhänge sichtbar ]

    Und wenn ich von bootstrap4 auf tpl-modified umstelle, sehe ich bei tpl-modified links sogar alle Kategorien.
    Irgendwann werde ich wohl doch auf das allerneuste Modified umstellen müssen, obwohl ich nicht glaube, dass das dann damit geregelt würde.

    Viele Grüße
    CHESSBASE

    hpzeller

    • Experte
    • Beiträge: 4.130
    • Geschlecht:
    Re: Modul für "leere Kategorien ausblenden"
    Antwort #21 am: 15. Mai 2020, 14:27:50
    Hallo CHESSBASE,

    in deinem geposteten Bild steht hinter der Unterkategorie "L+Z-Drehmaschinen" eine 1, also ein Produkt vorhanden, aber da diese Kategorie leer ist muss dieses Produkt ja in der Unterkategorie "Univ-L+Z-Drehmaschinen" stecken. So jedenfalls interpretiert die Funktion xtc_count_products_in_category in der Datei inc\xtc_count_products_in_category.inc.php das. Wenn das nicht korrekt ist, könnte ich mir vorstellen, dass in deiner Datenbank diesbezüglich eine Inkonsistenz besteht.

    Gruss
    Hanspeter

    hpzeller

    • Experte
    • Beiträge: 4.130
    • Geschlecht:
    Re: Modul für "leere Kategorien ausblenden"
    Antwort #22 am: 15. Mai 2020, 14:41:55
    [...]
    Nun aber doch eine frage, die Kategorien werden aber nur ausgeblendet, wenn keine Artikel in der Kategorie vorhanden sind.
    Habt ihr noch eine Idee, wie man die Kategorie ausblenden kann, wenn alle Artikel in der Kategorie deaktiviert sind?
    [...]

    Also eigentlich sollte es aber so sein wie du es wünscht, also wenn in einer Kategorie und deren Unterkategorien keine aktiven Artikel vorhanden sind, diese nicht angezeigt wird.

    Gruss
    Hanspeter

    CHESSBASE

    • Schreiberling
    • Beiträge: 264
    • Geschlecht:
    Re: Modul für "leere Kategorien ausblenden"
    Antwort #23 am: 15. Mai 2020, 15:12:56
    Da werde ich demnächst mal auf einer meiner anderen Webseiten den Shop auch noch mal testweise aufbauen (also die neueste Version natürlich) und dann ohne jegliche weitere Änderung meinerseits das noch einmal testen. Wenn es dann geht, wäre ich wenigstens einen Schritt weiter. Wenn es bei anderen funktioniert, muss es ja irgendwie machbar sein.

    sb_cbo-do

    • Fördermitglied
    • Beiträge: 464
    Re: Modul für "leere Kategorien ausblenden"
    Antwort #24 am: 15. Mai 2020, 15:54:48
    Hallo Hanspeter,

    leider funktioniert es bei mir nicht mit der neusten Shop Version (v2.0.5.1 rev 12725 dated: 2020-04-22) und die Kategorien bleiben Sichtbar, wenn kein Artikel in der Kategorie aktiviert ist.
    Wenn ich dann auf die Kategorie klicke, dann steht da zwar "Kategorie wurde nicht gefunden", aber es wäre wohl besser, wenn die Kategorie dann nicht angezeigt werden würde.

    Ich benutze übrigens auch das Bootstrap 4 template. Ich habe das jetzt aber auch mal mit dem tpl_modiefied_responsive Template getestet und da wurde auch die Kategorie weiterhin angezeigt.

    [ Für Gäste sind keine Dateianhänge sichtbar ]

    Es wäre auch schön, wenn Kategorien automatisch aktiviert werden, sobald dort ein Artikel aktiviert wird. Das funktioniert leider auch nicht automatisch.

    Im Demoshop werden die Kategorien übrigens auch angezeigt, wenn in einer Kategorie keine aktiven Artikel vorhanden sind.

    [ Für Gäste sind keine Dateianhänge sichtbar ]

    Ich dachte immer das wäre so gewollt.
    Es wäre aber schon besser, wenn Kategorien automatisch aktiviert oder deaktiviert werden, sobald keine Artikel aktiv sind oder dann wieder ein Artikel aktiviert wird.

    Gruß,

    Sven

    CHESSBASE

    • Schreiberling
    • Beiträge: 264
    • Geschlecht:
    Re: Modul für "leere Kategorien ausblenden"
    Antwort #25 am: 15. Mai 2020, 17:08:16
    Soeben bin ich wegen des Shops wieder mal 12 Stunden wach  :-o und komme zu folgendem Ergebnis:
    Auf einer meine leeren Websites habe ich den neuesten Shop sehr schnell installiert und nur wenige Kategorien eingegeben sowie einen Artikel in einer Unterkategorie. Dieser Artikel erscheint dann auch korrekt.

    Anschließend habe ich eine Datei angelegt, die das heißt: remove_empty_categories.php
    Dort ist dann exact nur dieser Code
    Code: PHP  [Auswählen]
    <?php

    // Leere Kategorien entfernen
      require_once (DIR_FS_INC.'xtc_count_products_in_category.inc.php');
      if (xtc_count_products_in_category($categories['categories_id']) < 1) array_pop($categories_content);
      if (empty($categories_content)) unset($categories_content);
    enthalten und wurde in die genanten beiden Verzeichniss abgespeichert.

    Leider ist dann das hier
    [ Für Gäste sind keine Dateianhänge sichtbar ]
    das Ergebnis. Ich finde es trotzdem ein supertolles Programm und man kann den Machern hier nur absoluten Respekt zollen, was man hier kostenlos zur Verfügung gestellt bekommt. Das hilft gerade kleinen Unternehmen sehr, um evtl. durchzustarten! Dafür jedenfalls 1000 Dank!
    Viele Grüße
    CHESSBASE

    karsta.de

    • Experte
    • Beiträge: 3.082
    Re: Modul für "leere Kategorien ausblenden"
    Antwort #26 am: 15. Mai 2020, 20:12:23
    Hallo Sven,
    du hast da einen Denkfehler. Das Script von Hanspeter blendet nur die Anzeige der Auflistung von leeren Kategorien und Unterkategorien im Content aus, nicht im Kategoriemenü.
    Um die Kategorien im Menü auszublenden, müssen in deinem Fall einmal die ajax-Datei von Karl im includes/extra/ajax/ und die templates/DEIN_TEMPL/source/inc/xtc_show_category.inc.php angepasst werden.

    BG Karsta

    CHESSBASE

    • Schreiberling
    • Beiträge: 264
    • Geschlecht:
    Re: Modul für "leere Kategorien ausblenden"
    Antwort #27 am: 17. Mai 2020, 05:59:11
    Heureka?
    Ich glaub's einfach nicht, dass das die Lösung sein kann, die ich gerade gefunden habe.
    Aber nun ist es genau so, wie ich es haben wollte.

    Die LÖSUNG: unter root/includes/modules/ habe ich einfach die categories_listing.php entfernt!


    Auf diese Weise kommen auf der rechten Seite nur noch die Ergebnisse aus dem Kategorienbereich der linken Seite.
    Bisher habe ich im normalen Shopablauf auch keinerlei Nachteile finden können. Falls die einer kennen sollte, bitte Bescheid geben.

    Gruß
    CHESSBASE
    9 Antworten
    2698 Aufrufe
    23. November 2017, 19:26:35 von Modulfux
    9 Antworten
    8540 Aufrufe
    12. Mai 2020, 07:18:41 von CHESSBASE
    2 Antworten
    3537 Aufrufe
    09. Dezember 2011, 12:28:39 von MAx_Dungeon
               
    anything