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: SEO URL mit Artikelnummer anstatt Artikel ID

    umbi

    • Mitglied
    • Beiträge: 163
    • Geschlecht:
    SEO URL mit Artikelnummer anstatt Artikel ID
    am: 19. Juli 2016, 04:08:08
    Hallo zusammen

    Ich frag mich gerade ob in der URL die  artikelnummer nicht sinnvoller wäre anstatt die auto-increment db art-id.

    2 Faktoren sprechen hier für mich dafür:

    1.)  alter shop  mit art. nr. könnte man per htaccess $artikelnummer einen forward auf neuen Modified shop machen  da alter shop sowie neuer shop die gleiche nummer in der URL haben.
    2.)  falsche produktbeschreibung in der url matcht trotzdem zum richtigen produkt -> hauptsache die Art. Nummer (die den Usern bekannt ist) stimmt.
    3.)  minimaler SEO Zusatzvorteil durch  content matching in der Produktinfo

    Das Problem sehe ich viel mehr darin dass der Aufwand vermutlich riesig ist, da auf den ersten blick viele URL Get Abfragen auf die products_id ausgerichtet sind.

    Ich würde es so lösen:

    htaccess von
    RewriteRule --(.+)\.html$ product_info.php?products_id=$1 [QSA,L]
    auf
    RewriteRule --(.+)\.html$ product_info.php?products_model=$1 [QSA,L]

    in der shopstat alle products_id abfragen  auf products_model ändern - d.h. der array müsste in der product_info.php auch noch erst aufgebaut werden (sollte sogar schon vorhanden sein).

    Dann fängt aber das Ghetto mit search.php etc erst an....  :-)

    Vielleicht in der Application_Top einfach einen Translator rein machen?

    Oder ist sogar die einfachste Lösung einen Mod in der Art. Update Query  Product_Model = Product_ID
    zu machen? So würde jeder Artikeleintrag die Artikelnummer in die Product_ID übernehmen.
    Zu Beachten in dieser Lösung wäre dass das ganze in der CSV Geschichte angepasst werden müsste.
    Ein Dirty Fix wäre: Art. CSV Export.  Spalte Product_Model in die Product_ID kopieren und wieder hochladen.

    Wer hat hier einen Tip für mich?

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

    Fakrae

    • Viel Schreiber
    • Beiträge: 997
    Re: SEO URL mit Artikelnummer anstatt Artikel ID
    Antwort #1 am: 19. Juli 2016, 07:49:02
    Da die Artikelnummer nicht zwangsläufig eindeutig ist, musst du das auch noch ändern - inklusive entsprechender Fehlermeldungen im Admin

    h-h-h

    • modified Team
    • Beiträge: 4.562
    Re: SEO URL mit Artikelnummer anstatt Artikel ID
    Antwort #2 am: 19. Juli 2016, 14:17:59
    Hallo umbi,
    ich habe das für einen Kunden einmal umgesetzt.
    Hier eine leicht abgeänderte Version mit /p/ in der Url, dies kann natürlich angepasst werden, es muss nur ein eindeutiges Muster vorhanden sein. Die Artikelnummer darf natürlich nicht doppelt vorhanden sein und sollte keine außergewöhnlichen Zeichen enthalten haben.

    includes/modules/set_ids_by_url_parameters.php

    suche:

    Code: PHP  [Auswählen]
    if (isset ($_GET['info'])) {

    füge davor ein:

    Code: PHP  [Auswählen]
    if (isset($_GET['products_model'])) {
      $p_model = xtc_db_input($_GET['products_model']);
      $p_model2 = str_replace_once('-', ' - ', $p_model); // artikelnummer fix
      $q = xtDBquery("SELECT products_id FROM products WHERE products_model ='".$p_model."' OR  products_model ='".$p_model2."' LIMIT 1");
      $r = xtc_db_fetch_array($q,true);
      $_GET['products_id'] = $r['products_id'];
    }

    .htaccess

    Code: PHP  [Auswählen]
    RewriteRule (.*)/p/(.*)/(.*)$ /product_info.php?products_model=$2 [qsappend,L]

    inc/shopstat_functions.inc.php

    suche:

    Code: PHP  [Auswählen]
    $link .= shopstat_hrefMask($product_name).ART_DIVIDER.$product_id.".html";

    ersetzen mit:

    Code: PHP  [Auswählen]
       $q = xtDBquery("SELECT products_model FROM products WHERE products_id =".$product_id);
       $r = xtc_db_fetch_array($q,true);
       $m = str_replace(' - ', '-', $r['products_model']); // artikelnummer fix
       $link .= 'p/'.$m.'/'.shopstat_hrefMask($product_name);

    Viele Grüße,
    h-h-h

    umbi

    • Mitglied
    • Beiträge: 163
    • Geschlecht:
    Re: SEO URL mit Artikelnummer anstatt Artikel ID
    Antwort #3 am: 20. Juli 2016, 23:24:31
    Hi h-h-h

    Danke! Werde ich gleich ausprobieren.

    Bei Mod v2 scheint es aber keine datei shopstats functions zu geben :-(  (seo_url_shopstat.php ??)

    Bezüglich der Prevention zur doppelten Artikelnummer würdest Du eine if Abfrage machen ob die Art.Nr. schon besteht, oder gleich in der Datenbank einen Ausschluss von Duplikaten eingeben?

    Gruus und danke nochmals

    umbi

    voodoopupp

    • Fördermitglied
    • Beiträge: 1.869
    • Geschlecht:
    Re: SEO URL mit Artikelnummer anstatt Artikel ID
    Antwort #4 am: 21. Juli 2016, 06:44:25
    Doch die gibt es. Und zwar im Ordner /inc

    umbi

    • Mitglied
    • Beiträge: 163
    • Geschlecht:
    Re: SEO URL mit Artikelnummer anstatt Artikel ID
    Antwort #5 am: 21. Juli 2016, 09:40:16
    Moin

    In meiner Shopversion habe ich die datei 100% nicht im /inc Verzeichnis.

    h-h-h

    • modified Team
    • Beiträge: 4.562
    Re: SEO URL mit Artikelnummer anstatt Artikel ID
    Antwort #6 am: 21. Juli 2016, 16:34:58
    [ Für Gäste sind keine Dateianhänge sichtbar ]
    Kann ich auch in der 2.0 nicht nachvollziehen.

    LG, h-h-h

    web28

    • modified Team
    • Beiträge: 9.404
    Re: SEO URL mit Artikelnummer anstatt Artikel ID
    Antwort #7 am: 22. Juli 2016, 14:23:16
    umbi hat schon die Vorabversion von 2.01!  ;-)

    Da gibt es diese Datei nicht mehr.

    umbi

    • Mitglied
    • Beiträge: 163
    • Geschlecht:
    Re: SEO URL mit Artikelnummer anstatt Artikel ID
    Antwort #8 am: 22. Juli 2016, 23:40:01
    pssst  web28 :-)

    nicht alles verraten...   hihi

    aber ist dann schon ein bisschen ein suchespiel dann die url deklarationen zu suchen mittels include commands... ich rate mal: /inc/xtc_product_link.inc  respektive  includes/classes/modified_seo_url.php sowie hauptsächlich includes/extra/seo_url_mod.php :-)

     bin noch am üben  die produkte id  mit artikelnummer zu überschreiben. ich werde diese Nuss schon noch knacken. Trotzdem bin ich für jeden Hinweis dankbar. Die Anleitung oben ist somit in der Vorversion nicht anzuwenden.

    liebe Grüsse aus den Bergen... ^^^

    h-h-h

    • modified Team
    • Beiträge: 4.562
    Re: SEO URL mit Artikelnummer anstatt Artikel ID
    Antwort #9 am: 23. Juli 2016, 13:50:37
    Ja, wirklich, bloß nicht zu viel verraten, ...  ;-)

    Da musste ich jetzt auch erst nachschauen.

    includes/extra/seo_url_mod/seo_url_shopstat.php

    Code: PHP  [Auswählen]
    $link = implode('/', $products_link_array).ART_DIVIDER.$this->params_array['products_id'];

    Gruß,
    h-h-h

    umbi

    • Mitglied
    • Beiträge: 163
    • Geschlecht:
    Re: SEO URL mit Artikelnummer anstatt Artikel ID
    Antwort #10 am: 23. Juli 2016, 16:57:24
    D.h. products_id   durch products_model da ersetzen?

    h-h-h

    • modified Team
    • Beiträge: 4.562
    Re: SEO URL mit Artikelnummer anstatt Artikel ID
    Antwort #11 am: 25. Juli 2016, 13:28:57
    includes/extra/seo_url_mod/seo_url_shopstat.php

    Code: PHP  [Auswählen]
       $q = xtDBquery("SELECT products_model FROM products WHERE products_id =".$this->params_array['products_id']);
       $r = xtc_db_fetch_array($q,true);
       $model = str_replace(' - ', '-', $r['products_model']); // artikelnummer fix
       $link = implode('/', $products_link_array).ART_DIVIDER.$model;

    .htaccess

    Code: PHP  [Auswählen]
      ##-- Products (::)
     RewriteRule ::(.+)\.html$ product_info.php?products_model=$1 [QSA,L]

    Viele Grüße,
    h-h-h

    webald

    • modified Team
    • Beiträge: 2.791
    Re: SEO URL mit Artikelnummer anstatt Artikel ID
    Antwort #12 am: 25. Juli 2016, 18:18:21
    Ich will da mal 2 Sachen zu bedenken geben, die das ganze nach hinten losgehen lassen können:

    1. Das Feld products_model ist weder unique noch muss es überhaupt gefüllt werden (Null ist zulässig)

    2. Ändert man das darf man einen Artikel nicht mehr einfach kopieren ohne die Artikelnummer (=products_model) entsprechend anzupassen. Der gleiche Artikel in verschiedenen Kategorien kann dann höchstens verlinkt werden, nicht aber kopiert mit einem ggf. anderen Text.

    awids

    • Experte
    • Beiträge: 3.803
    • Geschlecht:
    Re: SEO URL mit Artikelnummer anstatt Artikel ID
    Antwort #13 am: 25. Juli 2016, 20:21:21
    Hallo h-h-h und alle, die auch ein wenig Ahnung davon haben. :-)

    Mich persönlich stören die IDs in den URLs nicht, aber ich würde gerne den Format ändern und auf die Separator verzichten.

    So stelle ich mir das vor:

    Code: XML  [Auswählen]
    http://ww.meinshop.de/kategorie1/unterkategorie2/ARTIKEL-ID/Artikelname

    und das ganze ohne Dateierweiterung (.html) und /p/ in der URL. Wäre das auch umsetzbar? :-)

    h-h-h

    • modified Team
    • Beiträge: 4.562
    Re: SEO URL mit Artikelnummer anstatt Artikel ID
    Antwort #14 am: 25. Juli 2016, 22:35:23
    Hallo Alex,
    mit folgenden kleinen Änderungen sollte es ohne die oben genannten Probleme gehen.

    In beiden Fällen sollten Weiterleitungen für Kunden und Google geprüft werden, damit die alten Links weiterhin funktionieren.

    .htaccess am Ende:

    Code: PHP  [Auswählen]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule (.*)/([0-9]+)/(.*)$ /product_info.php?products_id=$2 [QSA,L]

    inc/shopstat_functions.inc.php

    suche:

    Code: PHP  [Auswählen]
    $link .= shopstat_hrefMask($product_name).ART_DIVIDER.$product_id.".html";

    ersetzen mit:

    Code: PHP  [Auswählen]
    $link .= $product_id . '/' . shopstat_hrefMask($product_name);

    Viele Grüße,
    h-h-h
    rechtstexte für onlineshop
    7 Antworten
    6801 Aufrufe
    01. März 2014, 12:34:23 von mcm
    7 Antworten
    4381 Aufrufe
    26. September 2011, 06:34:18 von GTB
    1 Antworten
    2236 Aufrufe
    02. März 2013, 18:59:36 von Alfred
    4 Antworten
    2967 Aufrufe
    03. März 2013, 12:26:58 von Stefan69