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: Themenwelten

    awids

    • Experte
    • Beiträge: 3.793
    • Geschlecht:
    Re: MODUL: Themenwelten
    Antwort #240 am: 04. Mai 2023, 17:45:30
    Ja, oben in der Funktion muss natürlich auch noch ein entsprechender Baustein integriert werden. Hab da gestern Nachmittag schonmal mal angefangen, bin aber nicht weit gekommen. Vielleicht komm ich ja später noch drauf, wenn nicht vorher jemand schon die Lösung findet. Denke mal, da dort nur ein einzelner Wert eingetragen werden soll, darf man es auch nicht als Array behandeln.
    Marktplatz - Eine große Auswahl an neuen und hilfreichen Modulen sowie modernen Templates für die modified eCommerce Shopsoftware

    awids

    • Experte
    • Beiträge: 3.793
    • Geschlecht:
    Re: MODUL: Themenwelten
    Antwort #241 am: 04. Mai 2023, 21:49:44
    @Dominik

    Mit der angehängten /inc/contentenhancer.inc.php kannst du nun durch diesen Ausdruck im Content-Manager

    [products products_models='ABC,DEF,GHI' min_quantity='50']

    einen Mindestbestand definieren. Viel Spaß damit.

    awids

    • Experte
    • Beiträge: 3.793
    • Geschlecht:
    Re: MODUL: Themenwelten
    Antwort #242 am: 06. Mai 2023, 11:15:55
    Wäre schön, wenn du mir noch zeitnah bestätigen könntest, ob das im Live-Betrieb alles so funktioniert, wie du dir das vorgestellt hast, lieber Dominik. Ich habe das ja nur in meinem Testshop mit 5 Testartikeln prüfen können.

    Dann würde ich die Dateien nochmal durchgehen, ob auch noch alles zu aktuellen Shop- und PHP-Versionen passt und hier das Paket nochmal als Ganzes anhängen. (Denke schon, dass viele User die von dir angeregte Erweiterung gebrauchen können.)

    awids

    • Experte
    • Beiträge: 3.793
    • Geschlecht:
    Re: MODUL: Themenwelten
    Antwort #243 am: 07. Mai 2023, 17:42:05
    Anbei ein neu gepacktes Paket in der Version 1.5.1 mit folgenden Verbesserungen und neuen Features:

    • Neues Feature: Anzeige von Produkten mit einem Mindestlagerbestand durch den Zusatz [... min_quantity='X']
    • Verbesserung: Verwendungs des PRODUCTS_PRICE_ARRAYs statt der Variable PRODUCTS_PRICE

    [EDIT Tomcraft 07.05.2023: Modul in Beitrag 1 ergänzt.]

    voodoopupp

    • Fördermitglied
    • Beiträge: 1.859
    • Geschlecht:
    Re: MODUL: Themenwelten
    Antwort #244 am: 08. Mai 2023, 13:02:53
    Servus awids,

    vielen Dank für die Anpassung. Hatte vorher keine Zeit, am Wochenende ist auch mal die Familie dran ;)

    Ich habe das mal in mehreren Varianten getestet und kann sagen, dass es funktioniert  :thumbs:

    Nun habe ich noch eine weitere Funktionalität eingebaut, mit der man Keywords ausschließen kann:
    Code: PHP  [Auswählen]
    [products clearwords='Clearword1,Clearword2,...']

    Je nachdem was man nämlich als Keywords eingibt, wird hier und da einfach zuviele unpassende Produkte ausgegeben.
    Bspw. möchte man Produkte mit "Bier" ausgeben, dann werden auch Artikel mit ausgegeben, bei denen in der Produktbeschreibung Sachen wie "ausprobieren", "anprobieren", "absorbieren", "halbieren" etc. vorkommen.

    Da kann man also nun gegensteuern und bspw dann einfach sowas eintragen:
    Code: PHP  [Auswählen]
    [products keywords='bier' clearwords='probier,sorbier,halbier...']

    Habe auch noch die Korrektur von noRiddle mit aufgenommen:
    Mein ins Modul eingegangener Voschlag

    [...]
    Man generiere eine neue Datei namens contentenhancer_meta.php in /includes/extra/modules/metatags_data/ mit folgendem Inhalt:
    Code: PHP  [Auswählen]
    <?php
    /*************************************************************************************
    * file: contentenhancer_meta.php
    * path: /includes/extra/modules/metatags_data/
    * use: convert placeholders for module "Themenwelten" in meta tags
    *
    * © copyright for module Themenwelten: MK, p3e
    * new file to clean meta tags, 04-2021, noRiddle
    *************************************************************************************/


    if(!function_exists('contentenhancer_inc')) {
        require_once(DIR_FS_INC.'contentenhancer.inc.php');
    }

    $metadata_array['title'] = contentenhancer_inc($metadata_array['title']);
    $metadata_array['description'] = contentenhancer_inc($metadata_array['description']);
    $metadata_array['keywords'] = contentenhancer_inc($metadata_array['keywords']);
    ?>
    [...]

    sollte so angepasst werden, da es u. U. sein kann, daß die betroffenen Array-Keys nicht existieren:
    Code: PHP  [Auswählen]
    <?php
    /*************************************************************************************
    * file: contentenhancer_meta.php
    * path: /includes/extra/modules/metatags_data/
    * use: convert placeholders for module "Themenwelten" in meta tags
    *
    * © copyright for module Themenwelten: MK, p3e
    * new file to clean meta tags, 04-2021, noRiddle
    *************************************************************************************/


    if(!function_exists('contentenhancer_inc')) {
        require_once(DIR_FS_INC.'contentenhancer.inc.php');
    }

    if(isset($metadata_array['title'])) $metadata_array['title'] = contentenhancer_inc($metadata_array['title']);
    if(isset($metadata_array['description'])) $metadata_array['description'] = contentenhancer_inc($metadata_array['description']);
    if(isset($metadata_array['keywords'])) $metadata_array['keywords'] = contentenhancer_inc($metadata_array['keywords']);
    ?>

    Gruß,
    noRiddle

    Anbei das entsprechende Paket nochmals in der Version 1.52.

    [EDIT Tomcraft 08.05.2023: Modul in Beitrag 1 ergänzt.]

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.838
    • Geschlecht:
    Re: MODUL: Themenwelten
    Antwort #245 am: 08. Mai 2023, 14:01:07
    Produkte mit "Bier" ausgeben hättest du doch machen können, indem du
    keywords=' bier 'eingibst, also mit Leerzeichen davor und dahinter.
    Oder reicht das nicht als Feature ?

    Gruß,
    noRiddle

    Hetfield

    • modified Team
    • Beiträge: 937
    Re: MODUL: Themenwelten
    Antwort #246 am: 08. Mai 2023, 14:44:50
    Dann würden aber z.B. Starkbier, Kellerbier, Dunkelbier usw. nicht gefunden.  :cheers:

    MfG Hetfield 8-)

    voodoopupp

    • Fördermitglied
    • Beiträge: 1.859
    • Geschlecht:
    Re: MODUL: Themenwelten
    Antwort #247 am: 08. Mai 2023, 15:14:00
    Da hat hetfield Recht.

    Denn es geht ja genau um die Tatsache, dass die keywords mit LIKE '%XYZ%' die Datenbanken durchsuchen und damit natürlich eben auch Weißbier, Bierglas, Bierflasche und vieles mehr finden. Dabei passiert aber eben leider der ein oder andere total unpassende Treffer.

    Da gibt es viele weitere Beispiele, z.B. bei "liebe" oder "herz".
    Ich will nichts was im Text "lieber", "liebes" oder "herzallerliebst" oder "herzlich" beinhaltet, eben nur Produkte, die treffenderweise damit etwas zu tun haben.

    Aber natürlich könnte man auch darüber nachdenken, dass man noch so Dinge wie "exact_keywords", "only_productname" etc. einführt, welche eben nicht die unscharfe Suche benutzen, sondern explizit auf genauere Treffer geht.

    Aber das ist dann sicher auch immer je nach Nutzer und Anwendungsfall verschieden, so dass man sich solche Dinge dann selber erstellen kann/sollte.

    Grüße
    Dominik

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.838
    • Geschlecht:
    Re: MODUL: Themenwelten
    Antwort #248 am: 08. Mai 2023, 15:45:57
    Jaja, verstehe, aber da sieht man halt wieder, daß Computer dumm sind (von wegen KI  :rofl:, never ever).
    Ein Liste mit massig clearwords  kann doch keine Lösung sein, da entsteht doch dann eine Kette von
    Code: SQL  [Auswählen]
    NOT LIKE '%XXX%' AND NOT LIKE '%YYY%'

    Hoffentlich hast du wenigstens FULLTEXT-Indexe auf den Feldern die du dafür durchsuchst, ansonsten kann ich mir nicht vorstellen, daß das nicht performance-mäßig in den Keller geht.
    Oder habt Ihr nur ein paar Artikel ?

    Gruß,
    noRiddle

    voodoopupp

    • Fördermitglied
    • Beiträge: 1.859
    • Geschlecht:
    Re: MODUL: Themenwelten
    Antwort #249 am: 08. Mai 2023, 16:09:59
    Ja, das ist mir auch klar, dass das alles ne Art Krücke ist.

    Wir haben ca. 4000 Artikel. Ich habe da mal einfach ein paar Tests gemacht und in der Tat ist die Suche je nach Wort doch recht unterschiedlich, was die Seitengeschwindigkeit angeht. Getestet habe ich das mit den normalen "Keywords", die ja im Modul bereits seit Beginn an enthalten sind.

    Meines Wissens nach habe ich keine Fulltext Indexe auf den Feldern, denn das sind ja die normalen products_description, products_name & products_keywords.

    Ich habe lediglich die gleiche Funktionalität aufgebaut, die der Suche nach "Keywords" zugrundeliegt. Diese habe ich entsprechend umgekehrt und eben nachgebaut.

    ...
    Ein Liste mit massig clearwords  kann doch keine Lösung sein, da entsteht doch dann eine Kette von
    Code: SQL  [Auswählen]
    NOT LIKE '%XXX%' AND NOT LIKE '%YYY%'
    ...

    Ich sehe die Clearwords ja eher zur Bereinigung der Keywords, sofern eben komische Ergebnisse kommen. Ich habe das einfach so gemacht: erstmal ein Keyword ausgeben und dann das Ergebnis anschauen. Dann evtl. die neue Funktion "min_quantity" ergänzt und dann am Ende noch ein/zwei Cleanwords eingebaut, damit die schlimmsten Ausreißer dann bereinigt sind.

    Aber ich habe das ja noch nicht besonders weit getestet und eingebaut, das wird die Zeit zeigen, wenn wir wissen, wo wir was abfragen möchten ;)

    Grüße
    Dominik

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.838
    • Geschlecht:
    Re: MODUL: Themenwelten
    Antwort #250 am: 08. Mai 2023, 16:27:13
    Naja, mit FULLTEXT-Indexes müsste die Syntax auch eine andere sein:
    Code: SQL  [Auswählen]
    MATCH (FIELD1, FIELD2, FIELD3) AGAINST('bier')

    Wenn man das Modul hier exessiv für Themen-Seiten / Landing Pages benutzt sollte man vielleicht cachen.
    (Habe mir den Code nicht angeschaut.)

    Gruß,
    noRiddle

    woniecar

    • Fördermitglied
    • Beiträge: 78
    • Geschlecht:
    Re: MODUL: Themenwelten
    Antwort #251 am: 16. Januar 2024, 15:40:09
    Gibt es mittlerweile schon eine Anpassung an die v3.0.0?

    Gruß Wolfgang

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.838
    • Geschlecht:
    Re: MODUL: Themenwelten
    Antwort #252 am: 16. Januar 2024, 17:58:05
    Hab' dir dazu geschrieben.

    Mein Vorschlag ist für die Darstellung die shop-eigenen Template-Files zu nehmen, wobei man dann auch das zusätzliche CSS des Moduls nicht benötigt.
    Würde bedeuten in/inc/contentenhancer.inc.php 
    Code: PHP  [Auswählen]
            //BOC use same template files as for normal sub-cat listing, noRiddle, 01-2024
            //$smarty->assign('categories', $module_content);
            $smarty->assign('categories_content', $module_content);
            //EOC use same template files as for normal sub-cat listing, noRiddle, 01-2024

    und
    Code: PHP  [Auswählen]
            //BOC use same template files as for normal product listing, noRiddle, 01-2024
            //$smarty->assign('products', $module_content);
            $smarty->assign('module_content', $module_content);
            //EOC use same template files as for normal product listing, noRiddle, 01-2024

    und in den beiden Template-Files,
    in die /templates/YOUR_TEMPLATE/module/module/content_enhancer/listing.html anstatt des bisherigen Codes das verwenden
    Code: PHP  [Auswählen]
    {*use code of normal product listing, noRiddle, 01-2024*}
    <div class="listingcontainer_full">
      {include file="module/includes/products_include_listing.html"}
    </div>

    und
    in die /templates/YOUR_TEMPLATE/module/module/content_enhancer/listing_cat.html  anstatt des bisherigen Codes den Inhalt der */module/sub_categories_listing.html  kopieren.
    Code: PHP  [Auswählen]
    {*use code of normal sub-cat listing, noRiddle, 01-2024*}
    <div class="sub_categories_listing">
      <div class="subline border_0 mb_0">{#heading_more_categories#}</div>
     <div class="subcats_row">
        {foreach name=aussen item=categories_data from=$categories_content key=spalten}
          <div class="subcats_item">
            <div class="subcats_item_inner">
              <a href="{$categories_data.CATEGORIES_LINK}" title="{$categories_data.CATEGORIES_NAME|onlytext}">                
                {if $categories_data.CATEGORIES_IMAGE != '' || (isset($categories_data.CATEGORIES_IMAGE_LIST) && $categories_data.CATEGORIES_IMAGE_LIST != '')}
                  <span class="subcats_image">
                    <span class="subcats_image_inner">
                      {if isset($categories_data.CATEGORIES_IMAGE_LIST) && $categories_data.CATEGORIES_IMAGE_LIST != ''}
                        <img class="lazyload" data-src="{$categories_data.CATEGORIES_IMAGE_LIST}" alt="{$categories_data.CATEGORIES_NAME|onlytext}" />
                      {else}
                        <img class="lazyload" data-src="{$categories_data.CATEGORIES_IMAGE}" alt="{$categories_data.CATEGORIES_NAME|onlytext}" />
                      {/if}
                      <noscript><img src="{$categories_data.CATEGORIES_IMAGE}" alt="{$categories_data.CATEGORIES_NAME|onlytext}" /></noscript>
                    </span>
                  </span>
                {/if}
                <span class="subcats_title"><span>{$categories_data.CATEGORIES_NAME}</span></span>
              </a>
            </div>
          </div>
        {/foreach}
      </div>
    </div>

    Das Einbinden der CSS-Datei in die general_bottom.css.php  ist nicht mehr nötig.

    Damit hat man eine Darstellung wie auch sonst im Template im Produkt-Listing und in der Anzeige der Sub-Kategorien.

    Gruß,
    noRiddle

    woniecar

    • Fördermitglied
    • Beiträge: 78
    • Geschlecht:
    Re: MODUL: Themenwelten
    Antwort #253 am: 17. Januar 2024, 12:14:43
    Jetzt läuft es super. Danke noRiddle.

    arammin

    • Neu im Forum
    • Beiträge: 18
    Re: MODUL: Themenwelten
    Antwort #254 am: 19. März 2024, 08:18:43
    Frage an woniecar oder noRiddle:

    Für die Verwendung in der aktuellen Version 3, wie genau muss man die Datei
     /inc/contentenhancer.inc.php
    abändern?

    An welcher Stelle muss man den Code von noRiddle ergänzen, oder ersetzt diese den aktuellen Code?
    Wäre nett, wenn ihr den kompletten Code von der /inc/contentenhancer.inc.php einstellt.

    Ideal wäre natürlich auch, wenn man das Paket für Version 3 aktualisieren könnte.

    Gruß
    arammin
    5 Antworten
    3503 Aufrufe
    12. September 2010, 21:03:02 von Haina
    9 Antworten
    3189 Aufrufe
    04. Januar 2019, 17:14:15 von Shorty
    106 Antworten
    52674 Aufrufe
    06. März 2021, 19:27:04 von awids