2012-05-08 14 views
8

Come creare un nuovo tipo di opzioni personalizzate per il prodotto in Magento, ad esempio devo dare il nuovo tipo di opzione immagine personalizzata in magento che preleva l'immagine dalla mia tabella modulo personalizzata e voglio assegnare quell'immagine al mio campo immagine opzioni personalizzate.come creare un nuovo tipo di opzioni personalizzate in magento?

+0

Per una risposta, consultare questo articolo: http://www.webmasterbulletin.net/2011/04/magento-programmatically-add-custom-options/1417 e la seguente domanda sull'aggiornamento delle opzioni personalizzate: http: // stackoverflow.com/questions/10798158/how-to-update-custom-options-programatically-in-magento – feeela

+1

sì questo crea nuove opzioni personalizzate per i prodotti non nuovi tipi di opzioni personalizzate come c'è una selezione di opzioni personalizzate e ora voglio creare nuovo tipo di opzioni personalizzate image – Mufaddal

+1

Scusate - ho frainteso prima la domanda ... – feeela

risposta

2

Ho dimenticato questa domanda, ma ho bisogno di nuovo di creare un nuovo tipo di opzione personalizzato nel mio altro progetto. Ho creato un nuovo tipo di opzioni personalizzate usando questo link.

La soluzione è un po 'lunga e non è possibile inserire tutto il codice qui, quindi ho appena condiviso questo collegamento, passando attraverso questo collegamento ho creato facilmente nuove opzioni personalizzate, la spiegazione è buona in questo articolo.

Ho modificato alcune modifiche per il mio bisogno.

Spero che questo possa aiutare qualcuno.

Come Dustin Graham ha detto che è incredibilmente difficile.

+0

puoi condividere il tuo codice del modulo? –

4

Come ha detto Dustin Graham, è molto difficile. Primi passi:

  1. Aggiungi nuovo nodo sotto global/catalog/product/options/custom/groups. Vedi esempi in /app/code/core/Mage/Catalog/etc/config.xml.

  2. Creare un nuovo blocco per rendere l'opzione personalizzata.

  3. Riscrivi Mage_Catalog_Model_Product_Option e implementa il salvataggio delle opzioni di tipo personalizzato (metodo saveOptions()) e il caricamento delle opzioni di tipo personalizzato (metodo getProductOptionCollection).

Se il tuo tipo personalizzato non è molto personalizzato :) - dovrebbe essere sufficiente.

0

@Mufaddal grazie per aver condiviso questo link. Mi piacerebbe offrire un'alternativa a questo poiché richiede una certa conoscenza.

Se si sta solo cercando di cambiare il modo in cui viene visualizzato un menu a discesa specifica (per esempio) è anche possibile sovrascrivere il /template/catalog/product/view/options/type/select.phtml come segue:

` getOption()>

<dt><label<?php if ($_option->getIsRequire()) echo ' class="required"' ?>><?php if ($_option->getIsRequire()) echo '<em>*</em>' ?><?php echo $this->escapeHtml($_option->getTitle()) ?></label> </dt> 
<dd<?php if ($_option->decoratedIsLast){?> class="last"<?php }?>> 
<div class="input-box"> 
    <?php echo $this->getValuesHtml(); ?> 

    <?php if($_option->option_id == 2) : ?> 
       <script type="text/javascript"> 
        jQuery('#select_2').css('display', 'none'); 
       </script> 

       <?php foreach ($_option->getValues() as $_value) { ?> 
        <?php echo $_value->getTitle(); // the title of the option ?> 
        <?php echo $_value->getOptionTypeId(); // the id ?> 
       <?php } ?> 
       <!-- add custom code that triggers select in the background --> 

      <?php endif ?> 

    <?php if ($_option->getIsRequire()): ?> 
     <?php if ($_option->getType() == Mage_Catalog_Model_Product_Option::OPTION_TYPE_RADIO || $_option->getType() == Mage_Catalog_Model_Product_Option::OPTION_TYPE_CHECKBOX): ?> 
      <span id="options-<?php echo $_option->getId() ?>-container"></span> 
     <?php endif; ?> 
    <?php endif;?> 
</div> 
?

`

È quindi possibile nascondere la selezione e interagire con la selezione tramite jQuery.

Problemi correlati