Modulshop - Eine große Auswahl an neuen und hilfreichen Modulen für die modified eCommerce Shopsoftware
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: Übergabe $_GET dynamischer Inhalt Suchmaschinenfreundliche URLs

    Chilonivm

    • Neu im Forum
    • Beiträge: 8
    Hallo,

    nachdem ich so ziemlich alles angepasst habe was mann so anpassen kann im shop, kommt mann an einen Punkt wo etwas eleganter gelöst werden muss oder soll ;)

    Aktuell habe ich eine eigene PHP Datei über den Content Mananger eingebunden. Da der Shop zweisprachig genutzt wird habe ich auch den entsprechenden eintrag für die englische Version des Contents vorgenommen, mit identischer ID für verknüpfung des Contents untereinander.

    Der Original Aufruf der Seite erfolgt mit der übergabe einer $_GET Variable zur Anzeige von dynamischen Inhalt:

    http://www.irgendeineadresse.de/test-content-seite:_:999.html?model=1234

    Nun wird die Seite dynamisch zur Eingabe korrekt angezeigt. Leider wird jedoch beim Wechsel der Sprache von deutsch auf englisch diese nicht weitergegeben.

    Lokal mit XAMPP ohne Suchmaschinenfreundliche URLs funktioniert dieses.

    Online mit eingeschalteten Suchmaschinenfreundliche URLs wird nur die Sprache mit der URL übergeben, das Model wird nicht weitergeleitet:

    http://www.irgendeineadresse.de/test-content-seite:_:999.html?language=en

    Die .htaccess welche vermutlich die $_GET Variable unterdrückt sieht folgendermaßen aus:
    #-- Sitemap
    RewriteRule ^sitemap(.*)\.html$ /shop_content.php?coID=8 [qsappend,L]

    ##-- Kategorien
    RewriteCond %{REQUEST_URI} (.*):::([_0-9]+):([_0-9]+)\.html$
    RewriteRule (.*):::([_0-9]+):([_0-9]+)\.html$ /index.php?cPath=$2&page=$3 [qsappend,L]
    RewriteCond %{REQUEST_URI} (.*):::([_0-9]+)\.html$
    RewriteRule (.*):::([_0-9]+)\.html$ /index.php?cPath=$2 [qsappend,L]

    ##-- Produkte
    RewriteRule (.*)::(.+)\.html$ /product_info.php?products_id=$2 [qsappend,L]

    ##-- Content
    RewriteRule (.*):_:([0-9]+)\.html$ /shop_content.php?coID=$2 [qsappend,L]

    ##-- Manufacturers
    RewriteCond %{REQUEST_URI} (.*):.:([_0-9]+):([_0-9]+)\.html$
    RewriteRule (.*):.:([_0-9]+):([_0-9]+)\.html$ /index.php?manufacturers_id=$2&page=$3 [qsappend,L]
    RewriteCond %{REQUEST_URI} (.*):.:([_0-9]+)\.html$
    RewriteRule (.*):.:([0-9]+)\.html$ /index.php?manufacturers_id=$2 [qsappend,L]

    ##-- Fehlerseiten auf die Sitemap lotsen
    ErrorDocument 400 /sitemap.html?error=400
    ErrorDocument 401 /sitemap.html?error=401
    ErrorDocument 402 /sitemap.html?error=402
    ErrorDocument 403 /sitemap.html?error=403
    ErrorDocument 404 /sitemap.html?error=404
    ErrorDocument 500 /sitemap.html?error=500

    ##-- BOF - Tomcraft - 2009-09-09 - Use canonical URLs
    # (don't use if your shop runs on a subdomain!)
    #
    #RewriteCond %{HTTP_HOST} !^www\. [NC]
    #RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [L,R=301]
    #
    ##-- EOF - Tomcraft - 2009-09-09 - Use canonical URLs
    Was muss geändert werden damit diese zusätzliche Variable über den Sprachwechsel mitgenommen wird? Vielleicht bin ich mit der .htaccess Datei auch auf dem falschen Dampfer?

    Vielen Dank für Eure Hilfe!



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

    Chilonivm

    • Neu im Forum
    • Beiträge: 8
    Habe mit der source/boxes/languages.php ein wenig experimentiert und versucht den Wert nochmals an die URL dran zuhängen welche aufgerufen wird.

    Lokal auf XAMPP ohne Suchmaschinenfreundliche URLs doppelt zeigt er den doppelt an,
    jedoch online mit Suchmaschinenfreundliche URLs wieder ohne übergabe.

    Hier der original abschnitt aus der languages.php:

    Code: PHP  [Auswählen]
     $languages_string = '';
      $count_lng='';
      reset($lng->catalog_languages);
      while (list($key, $value) = each($lng->catalog_languages)) {
      $count_lng++;
              $languages_string .= ' <a href="' . xtc_href_link(basename($PHP_SELF), 'language=' . $key.'&'.xtc_get_all_get_params(array('language', 'currency')), $request_type) . '">' . xtc_image('lang/' .  $value['directory'] .'/' . $value['image'], $value['name']) . '</a> ';
      }
    Also kann es eigentlich nur noch an den .htaccess Regeln liegen?

    8 Antworten
    5175 Aufrufe
    31. August 2012, 11:19:44 von Alfred
    18 Antworten
    18104 Aufrufe
    13. Mai 2011, 17:00:35 von web28
    7 Antworten
    5887 Aufrufe
    26. Mai 2011, 11:47:51 von Ronja
    20 Antworten
    9993 Aufrufe
    10. November 2012, 11:14:00 von zarskey