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: Suche nach Hersteller in der "Suchbox" nicht möglich

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.988
    • Geschlecht:
    Re: Suche nach Hersteller in der "Suchbox" nicht möglich
    Antwort #15 am: 30. Mai 2015, 17:17:51
    Du mußt trennen zwischen SEO-Gesichtspunkten
    - was die Frage anbelangt ob Herstellername und/oder Artikelnummer im h1-tag des Artikelnamens, im (meta)-title, in der meta-deacription usw. vorkommt -
    und den Such-Gesichtspunkten.

    Per Default kann das Shop-System Herstellernamen nur finden wenn sie im Produktnamen oder in der Produktbeschreibung vorkommen. Was den Produktnamen betrifft natürlich dann nicht wenn der Herstellername erst im Template an den Produktnamen angefügt wird, also nicht im DB-Feld products_name steht.

    Du könntest die /advanced_search_result.php jedoch so erweitern, daß sie auch die Herstellernamen findet, insofern sie im Backend angegeben sind und somit in der Datenbank für das jeweilige Produkt stehen (DB-Feld manufacturers_id in Tabelle products).
    Dafür müsstest du
    • den $from_string so erweitern, daß er einen JOIN auf die Tabelle manufacturers macht um an den Herstellernamen zu kommen welcher in letztgenannter Tabelle steht
    Aus diesem
    Code: PHP  [Auswählen]
    $from_str  = "FROM ".TABLE_PRODUCTS." AS p LEFT JOIN ".TABLE_PRODUCTS_DESCRIPTION." AS pd ON (p.products_id = pd.products_id) ";
    das machen
    Code: PHP  [Auswählen]
    //BOC find also manufacturer, noRiddle
      //$from_str  = "FROM ".TABLE_PRODUCTS." AS p LEFT JOIN ".TABLE_PRODUCTS_DESCRIPTION." AS pd ON (p.products_id = pd.products_id) ";
      $from_str  = "FROM ".TABLE_PRODUCTS." AS p LEFT JOIN ".TABLE_PRODUCTS_DESCRIPTION." AS pd ON (p.products_id = pd.products_id) LEFT JOIN ".TABLE_MANUFACTURERS." AS m ON p.manufacturers_id = m.manufacturers_id ";
      //EOC find also manufacturer, noRiddle

    und
    • den $where_str erweitern indem du
    unter diesem
    Code: PHP  [Auswählen]
    $where_str .= "OR p.products_manufacturers_model LIKE ('%".$keyword."%') ";
    $where_str .= $ent_keyword ? "OR p.products_manufacturers_model LIKE ('%".$ent_keyword."%') " : '';
    das einfügst
    Code: PHP  [Auswählen]
    //BOC find also manufacturer, noRiddle
    $where_str .= "OR m.manufacturers_name LIKE ('%".$keyword."%') ";
    $where_str .= $ent_keyword ? "OR m.manufacturers_name LIKE ('%".$ent_keyword."%') " : '';
    //EOC find also manufacturer, noRiddle noRiddle

    Willst du außerdem den Herstellernamen in den Produkten des Suchergebnisses ausgeben solltest du $add_select noch so erweitern
    Code: PHP  [Auswählen]
    $add_select = 'p.products_manufacturers_model,m.manufacturers_name,';

    Um den Herstellernamen auch wirklich für das jeweilige Produkt im Listing der Ergebnisse zur Verfügung zu haben mußt du dann noch in /includes/classes/product.php im $productData-Array unter diesem
    Code: PHP  [Auswählen]
    'PRODUCTS_MANUFACTURERS_MODEL' => isset($array['products_manufacturers_model']) ? $array['products_manufacturers_model'] : '',
    das einfügen
    Code: PHP  [Auswählen]
    //BOC have manufacturers_name in search results (see /advanced_search_results.php), noRiddle
    'PRODUCTS_MANUFACTURERS_NAME' => $array['manufacturers_name'],
    //EOC have manufacturers_name in search results (see /advanced_search_results.php), noRiddle

    Im Template /templates/module/product_listing_*.html kannst du den Herstellernamen dann wie folgt verwenden:
    Code: XML  [Auswählen]
    {*BOC manufacturers_name for search results, noRiddle*}
    {if $module_data.PRODUCTS_MANUFACTURERS_NAME}
    <p>{$module_data.PRODUCTS_MANUFACTURERS_NAME}</p>
    {/if}
    {*EOC manufacturers_name for search results, noRiddle*}

    Bei den Kommentaren
    - die ich immer empfehlen würde wenn man etwas am Code ändert -
    kannst du natürlich dein eigenes Kürzel verwenden.

    Gruß,
    noRiddle

    *NACHTRAG*
    Sehe gerade, daß web0null hier im Thread bereits eine Anleitung gepostet hat, sogar mit Einstellungsmöglichkeit im Backend...

    zeolite

    • Fördermitglied
    • Beiträge: 142
    • Geschlecht:
    Re: Suche nach Hersteller in der "Suchbox" nicht möglich
    Antwort #16 am: 01. Juni 2015, 00:39:48
    Ist es so, dass ich unter Berücksichtigung von dem (Google Suchergebnis) die Herstellernamen aus der Artikelbezeichnung weglassen kann und es hat keine extrem schlechten Auswirkungen auf die Suchmaschinen?

    Gruß,
    zeolite

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.988
    • Geschlecht:
    Re: Suche nach Hersteller in der "Suchbox" nicht möglich
    Antwort #17 am: 01. Juni 2015, 16:56:27
    • Ich bin kein SEO-Fachmann.
    • Lies dich mal in SEO ein.
    • Ist es für dich sehr wichtig alles perfekt richtig zu machen, nimm Geld in die Hand und suche dir einen SEO-Fachman deines Vertrauens (im Forum gibt es z.B. den Experten Alfred (was keine Empfehlung ist, da ich seine Arbeit nicht kennen und folglich nicht einschätzen kann))
    • Sind deine Fragen zu allgemein.

    Willst du mit dem Herstellernamen in den Suchmaschinen gefunden werden mußt du entsprechende Optimierungen dahingehend vornehmen.
    Den Herstellernamen, welcher ja wie in meinem vorigen Post erklärt in der DB steht, automatisch an z.B. den (meta)-title anzufügen ist ja z.B. kein Problem.
    Das Suchworte oder Suchwortkombinationen im (meta)-title, in der meta-description und im Text noch ein- zweimal vorkommen sollten ist ja kein Geheimnis.

    Übrigens würde ich mich rechtlich absichern was die Erlaubnis des Verwendens von Herstellernamen angeht auf die optimiert wird.

    Gruß,
    noRiddle
    5 Antworten
    3615 Aufrufe
    10. Februar 2010, 17:10:54 von speedy
    2 Antworten
    2677 Aufrufe
    06. August 2012, 16:50:42 von smoker
    6 Antworten
    4179 Aufrufe
    31. Januar 2017, 15:29:24 von JanineB