Seite 1 von 1

Produkt-Suche

Verfasst: 16.04.2010, 08:28
von wolfschw
Hallo

Wenn man ein Produkt Sucht z.B. O-Ring, werden sämtliche O-Ringe die es im Shop gibt aufgelistet.
Legt man jetzt einen O-Ring von dieser Produktliste in den Warenkorb wird plötzlich eine ganz
andere Liste angezeigt. Besser wäre es wenn diese Liste weiterhin bestehen bleibe für weiteren kauf anderer O-Ringe.
Im Demo-Shop http://Demo.MyOOS.de/ ist es das gleiche.
Sucht man einen Kochlöffel und legt einen von diesen in Warenkorb
wird auch hier eine ganz andere Seite angezeigt.

gruß

wolfgang

Verfasst: 16.04.2010, 17:14
von r23
Hallo,

für einen Sponsor haben wir dies in den letzten Tagen bereits an seinem Shop geändert.

Diese Erweiterung wird Teil von MyOOS Version 2.1. unterstützt und die Änderungen sind
bereits in der Entwicklungsumgebung veröffentlicht.

cu

ralf

Verfasst: 16.04.2010, 18:01
von wolfschw
Das ist ja schön.

Und was muß ich Sponsoren damit ich auch daran Teil haben kann ?

gruß

Verfasst: 16.04.2010, 18:48
von r23
Hallo,

evtl. reicht es aus, wenn man das Produkt Listing von $_POST auf $_GET umstellt.

z.b. in dem man auf die Eingabe der Bestellmenge in den Ergebnissen verzichtet

~/shop/includes/oos_define.php

Code: Alles auswählen

 define('PRODUCT_LISTING_WITH_QTY', 'false'); 

Die Erweiterung ist teilweise noch Baustelle. zurzeit bereiten die "Suchmaschinen freundlichen URLs" bei den Suchergebnissen noch Probleme ...

Verfasst: 16.04.2010, 20:09
von r23
Hallo,

hier die Zusammenfassung der Änderungen.

wir nehmen in der oos_main die Variablen aus den Shop mit

// POST overrides GET data
// We don't use $_REQUEST here to avoid interference from cookies...
$aData = array();
$aData = $_POST + $_GET;


in der oos_cart_actions.php
verzichten wir auf die funktion

Code: Alles auswählen

oos_get_all_get_parameters($parameters)
sondern nehmen nur noch bekannte Variablen aus dem Shop an
$parameters

Code: Alles auswählen

$parameters = '';

if (DISPLAY_CART == '1') {
    $goto_file = $aPages['shopping_cart];
} else {
    $goto_file = $sPage;

    if (isset($aData['manufacturers_id]) && is_numeric($aData['manufacturers_id])) {
       $parameters .= 'manufacturers_id=' .  intval($aData['manufacturers_id]) . '&';
    }
    if (isset($aData['nv]) && is_numeric($aData['nv])) { 
       $parameters .= 'nv=' .  intval($aData['nv]) . '&';
    }
    if (isset($aData['filter_id]) && is_numeric($aData['filter_id])) { 
       $parameters .= 'filter_id=' .  intval($aData['filter_id]) . '&';
    } 
    if (isset($aData['categories]) && is_string($aData['categories]))  {
       $parameters .= 'categories=' .  rawurlencode(oos_var_prep_for_os($aData['categories])) . '&';
    }
    if (isset($aData['sort]) && is_string($aData['sort])) { 
       $parameters .= 'sort=' .  rawurlencode(oos_var_prep_for_os($aData['sort])) . '&';
    }   
    if (isset($aData['dfrom]) && !empty($aData['dfrom]))  {
        $dfrom = (($aData['dfrom] == DOB_FORMAT_STRING) ? '' : oos_prepare_input($aData['dfrom]));
        $parameters .= 'dfrom=' . rawurlencode($dfrom) . '&';
    }
    if (isset($aData['dto]) && !empty($aData['dto]))  {
        $dto = (($_GET['dto] == DOB_FORMAT_STRING) ? '' : oos_prepare_input($_GET['dto]));
        $parameters .= 'dto=' . rawurlencode($dto) . '&'; 
    }
    if (isset($aData['pfrom]) && !empty($aData['pfrom]))  {
        $pfrom = oos_prepare_input($_GET['pfrom]);
        $parameters .= 'pfrom=' . rawurlencode($pfrom) . '&';
    }
    if (isset($aData['pto]) && !empty($aData['pto]))  {
        $pto = oos_prepare_input($_GET['pto]);
        $parameters .= 'pfrom=' . rawurlencode($pto) . '&';
    }
    if (isset($aData['keywords]) && !empty($aData['keywords]))  {
        $sKeywords = oos_prepare_input($aData['keywords]);

        if ( isset( $sKeywords ) || is_string( $sKeywords ) )      
            $parameters .= 'keywords=' . rawurlencode($sKeywords) . '&';
    }

    if (isset($aData['categories_id]) && is_numeric($aData['categories_id])) {
        if (isset($aData['inc_subcat]) && ($aData['inc_subcat] == '1')) {
            $parameters .= 'inc_subcat=1&';
        }
    }    
}
in der 1.7.15 sind einigen Variablen anders. Dies soll auch nur das Prinzip erklären.
$aData['categories]) ist in 1.7.15 $aData['cPath]) cPath
$aData['nv]) ist in 1.7.15 $aData['page])


in der
~/shop/includes/modules/product_listing
http://svn.berlios.de/viewvc/oos/trunk/ ... p?view=log
prüfen wir nun, ob eine Variable übergeben wurde (wenn cPath nicht vorhanden ist, darf man bei den suchergebnissen nicht

Code: Alles auswählen

               if (PRODUCT_LISTING_WITH_QTY == 'true') {
.
.
.
                 $lc_text .= '<input type="hidden" name="cPath" value="' . $cPath .'">';
sondern muss prüfen, ob $cPath vorhanden ist....

wir nehmen somit in der advanced_search_result.php die Variablen an
http://svn.berlios.de/viewvc/oos/trunk/ ... iew=markup

und erstellen uns
$all_get_listing
$sProductListBuyNowHidden

dir wir in der product_listing.php ausgeben
http://svn.berlios.de/viewvc/oos/trunk/ ... isting.php

Ich hoffe zum nachbauen reichen diese Informationen

Schönes Wochenende

ralf

Verfasst: 17.04.2010, 09:16
von r23
Hallo,

hier ein Bugfix für die Version 1.7. ab 10

folgende Dateien bitte austauschen
~/shop/inclucdes/function/function_output.php
http://www.oos-shop.de/service/oos17x/f ... output.txt

~/shop/includes/function/function_kernel.php
http://www.oos-shop.de/service/oos17x/f ... kernel.txt

~/shop/includes/modules/product_listing.php
http://www.oos-shop.de/service/oos17x/p ... isting.txt

Gruß

ralf

Verfasst: 18.04.2010, 19:19
von wolfschw
Hallo

So weit funktioniert es ja,
aber bei mir wird in der linken Kategorie-Block und oben rechts im Warenkorb-Block
plötzlich die Schriftgröße verändert.
Ich finde denn Fehler einfach nicht.

gruß

wolfgang

Verfasst: 18.04.2010, 22:55
von r23
Hallo,

bei mir wurde die Schrift nicht geändert.

evtl. sind Fehler im css schuld?
http://jigsaw.w3.org/css-validator/vali ... xample.org

Mit besten Grüßen

ralf

Verfasst: 19.04.2010, 13:51
von wolfschw
Hallo

Wenn ich die alte Datei product_listing.php wieder übertrage ist Schriftgröße normal.
Die Schriftgröße ändert sich nur wenn produkte gelistet werden.
Bei einer Unterkategorie sind die Blöcke Kategorie und Warenkorb in normaler größe.

Im css sind keine Fehler.

gruß

wolfgang

Verfasst: 19.04.2010, 13:57
von wolfschw
Noch was

Im Demo-Shop z.B. verändert sich der Warenkorb Block in der Größe.
Wenn man auf die Startseite zurück geht wird der Block wieder normal groß.