Produkt automatisch hinzufügen

  • Hallo,



    Also konfigurieren kann man es meines Wissens nicht.
    Man müsste da was scripten.


    Hier damit kannst du dei Warenkorb Session von Virtuemart darstellen
    echo print_r(unserialize($_SESSION['__vm']['vmcart']));


    Dann müsstest Du wahrscheinlich ein
    if Statement schreiben kombiniert mit der entsprechenden Product ID



    So ganz habe ich deine Beschreibung aber auch nicht verstanden.
    Könntest Du es näher beschreiben was für ein Produkt er wählt und welches er vorher wählte.


    Grüße
    unkelo

  • oh hilfe grausam unkelo :-)


    das geht doch alles viel angenehmer,... nutzt den vmdebug('mein kommentar',$valueToSee,$valueToSee2, ...);


    Zudem geht der Code etwa so


    $cart = VirtueMartCart::getCart();
    $cart->add(array(1));


    würde das Product mit id 1 dazufügen


    quantity wird geholt mit $quantityPost = (int) $post['quantity'][$p_key];


    also die quantity in den Post setzen vorher und fertig.

  • Danke Milbo ,


    Wieder etwas dazugelernt .
    Solche ähnliche sachen habe ich jetzt von der Joomla Doc abgeleitet für VM.
    Wie man DB werte und andere Variablen ausliest etc.


    Grüße
    Unkelo

  • Hi Computermobil,


    Ich würde es wohl in die Cart
    components\com_virtuemart\views\cart\tmpl\default.tpl
    oder in die productdetails oder category
    components\com_virtuemart\views\cart\productdetails\tmpl\default.tpl


    Vieleicht davon abhägig zu machen ob dieser Artikel zu jedem anderen Artikel hinzugefügt werden soll oder nur innerhalb einer kategorie oder zu einem anderen Artikel.


    Ich werd dies gleich mal testweise probieren evtnl erhalte ich ein brauchbaren Codeschnipsel. Nur schnell ein Backup ziehen ,-)

  • hmm,


    also habe jetzt leider keine Zeit mehr, aber vieleicht kann Milbo dies kompakter lösen
    Ich hätte es so angefangen aber die Add to Cart funktion funktioniert so nicht.


    $array = unserialize($_SESSION['__vm']['vmcart']);
    $products = $array->products;
    //if ($amount != 0){ echo $amount; } else { echo 0; }
    if (array_key_exists('2', $products))
    {
    echo "Artikel dem Warenkorb hinzugefügt !";

    $cart = VirtueMartCart::getCart();
    $cart->add(array(1));

    }
    else
    {
    echo "Nichts hinzugefügt !";
    }


    Zur Erklärung wenn Artikel Mit der ID 2 im Warenkorb ist dann fügt er den Artiekl mit ID 1 hinzu (Theorie) ,-)


    Grüße
    unkelo