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: Nur Artikel mit Bestand >0 auf Startseite

    AllyG

    • Schreiberling
    • Beiträge: 419
    • Geschlecht:
    Nur Artikel mit Bestand >0 auf Startseite
    am: 04. Februar 2018, 21:48:16
    Hallo,

    gibt es eigentlich die Möglichkeit bei der zufällig generierten Artikelliste auf der Startseite nur Artikel anzeigen zu lassen, die mit einem Bestand von mind. 1 in der Datenbank liegen?

    Würde mich ja mal stark interessieren :-)

    Linkback: https://www.modified-shop.org/forum/index.php?topic=38566.0

    Teratek

    • Schreiberling
    • Beiträge: 273
    Re: Nur Artikel mit Bestand >0 auf Startseite
    Antwort #1 am: 05. Februar 2018, 13:28:47
    Wenn du die TOP-Artikel in der 2er Version meinst dann müßte es die

    shoproot\includes\extra\default\center_modules\new_products_default.php

    sein. Dort einfach den Code
    Code: PHP  [Auswählen]
    $new_products_query = "SELECT p.*,
                                      pd.products_name,
                                      pd.products_short_description,
                                      m.manufacturers_name
                                 FROM "
    .TABLE_PRODUCTS." p
                            LEFT JOIN "
    .TABLE_MANUFACTURERS." m
                                      ON p.manufacturers_id = m.manufacturers_id
                                 JOIN "
    .TABLE_PRODUCTS_DESCRIPTION." pd
                                      ON p.products_id = pd.products_id
                                         AND pd.products_name <> ''
                                         AND pd.language_id = '"
    .(int) $_SESSION['languages_id']."'
                                WHERE p.products_startpage = 1
                                  AND p.products_status = 1
                                      "
    .PRODUCTS_CONDITIONS_P."
                             GROUP BY p.products_id
                             ORDER BY "
    .$order_by."
                                LIMIT "
    .MAX_DISPLAY_NEW_PRODUCTS;

    Ersetzen mit
    Code: PHP  [Auswählen]
    $new_products_query = "SELECT p.*,
                                      pd.products_name,
                                      pd.products_short_description,
                                      m.manufacturers_name
                                 FROM "
    .TABLE_PRODUCTS." p
                            LEFT JOIN "
    .TABLE_MANUFACTURERS." m
                                      ON p.manufacturers_id = m.manufacturers_id
                                 JOIN "
    .TABLE_PRODUCTS_DESCRIPTION." pd
                                      ON p.products_id = pd.products_id
                                         AND pd.products_name <> ''
                                         AND pd.language_id = '"
    .(int) $_SESSION['languages_id']."'
                                WHERE p.products_startpage = 1
                                  AND p.products_status = 1
                                  AND p.products_quantity > 0
                                      "
    .PRODUCTS_CONDITIONS_P."
                             GROUP BY p.products_id
                             ORDER BY "
    .$order_by."
                                LIMIT "
    .MAX_DISPLAY_NEW_PRODUCTS;

    karsta.de

    • Experte
    • Beiträge: 3.157
    Re: Nur Artikel mit Bestand >0 auf Startseite
    Antwort #2 am: 05. Februar 2018, 13:53:13
    Oder du arbeitest im Template in der templates/tpl_modified/module/includes/product_listing_include.html mit
    {if $module_data.PRODUCTS_QUANTITY > '0'}ARTIKEL BESTAND HÖHER ALS '0' ZEIGEN{/if}

    Allerdings würde das dann für alle Produktlistings so angezeigt werden.

    BG kgd

    AllyG

    • Schreiberling
    • Beiträge: 419
    • Geschlecht:
    Re: Nur Artikel mit Bestand >0 auf Startseite
    Antwort #3 am: 09. Februar 2018, 21:24:08
    Hallo ihr Beiden :)

    Erst einmal vielen Dank für die beiden Ideen.  Ich habs mit eurer Hilfe gefunden. Es ist in der shoproot\includes\extra\default\center_modules\new_products_default.php aber es muss folgender Code:

    Code: PHP  [Auswählen]
    $new_products_query = "SELECT p.*,
                                      pd.products_name,
                                      pd.products_short_description,
                                      m.manufacturers_name
                                 FROM "
    .TABLE_PRODUCTS." p
                            LEFT JOIN "
    .TABLE_MANUFACTURERS." m
                                      ON p.manufacturers_id = m.manufacturers_id
                                 JOIN "
    .TABLE_PRODUCTS_DESCRIPTION." pd
                                      ON p.products_id = pd.products_id
                                         AND pd.products_name <> ''
                                         AND pd.language_id = '"
    .(int)$_SESSION['languages_id']."'
                                 JOIN "
    .TABLE_PRODUCTS_TO_CATEGORIES." p2c
                                      ON p.products_id = p2c.products_id
                                 JOIN "
    .TABLE_CATEGORIES." c
                                      ON c.categories_id = p2c.categories_id
                                         AND c.categories_status = 1
                                WHERE p.products_status = 1
                                      "
    .PRODUCTS_CONDITIONS_P."
                                      "
    .$days."
                             GROUP BY p.products_id
                             ORDER BY MD5(CONCAT(p.products_id, CURRENT_TIMESTAMP))
                                LIMIT "
    .MAX_DISPLAY_NEW_PRODUCTS;

    durch diesen ersetzt werden:

    Code: PHP  [Auswählen]
    $new_products_query = "SELECT p.*,
                                      pd.products_name,
                                      pd.products_short_description,
                                      m.manufacturers_name
                                 FROM "
    .TABLE_PRODUCTS." p
                            LEFT JOIN "
    .TABLE_MANUFACTURERS." m
                                      ON p.manufacturers_id = m.manufacturers_id
                                 JOIN "
    .TABLE_PRODUCTS_DESCRIPTION." pd
                                      ON p.products_id = pd.products_id
                                         AND pd.products_name <> ''
                                         AND pd.language_id = '"
    .(int)$_SESSION['languages_id']."'
                                 JOIN "
    .TABLE_PRODUCTS_TO_CATEGORIES." p2c
                                      ON p.products_id = p2c.products_id
                                 JOIN "
    .TABLE_CATEGORIES." c
                                      ON c.categories_id = p2c.categories_id
                                         AND c.categories_status = 1
                                WHERE p.products_status = 1
                                                            AND p.products_quantity > 0
                                      "
    .PRODUCTS_CONDITIONS_P."
                                      "
    .$days."
                             GROUP BY p.products_id
                             ORDER BY MD5(CONCAT(p.products_id, CURRENT_TIMESTAMP))
                                LIMIT "
    .MAX_DISPLAY_NEW_PRODUCTS;

    Dann läufts :-) vielen Dank!
    Shop Hosting
    9 Antworten
    619 Aufrufe
    16. März 2023, 11:53:07 von lithoverlag
    2 Antworten
    2256 Aufrufe
    23. April 2012, 20:19:40 von f.it.s
    4 Antworten
    2962 Aufrufe
    12. Mai 2010, 11:39:49 von Cube