2010-11-25 15 views
3

La table de newsletter de magento est fournie avec les champs du prénom et du nom de famille, mais dans la configuration par défaut, seule l'adresse e-mail est enregistrée. Je voudrais utiliser le champ du prénom, mais j'ai un peu de mal à trouver où l'enregistrement est sauvegardé.Magento: modification du module de newsletter

c'est maintenant ce que ma forme ressemble:

<form action="<?php echo $this->getFormActionUrl() ?>" method="post" id="newsletter-validate-detail"> 
    <div class="block-content"> 
     <table> 
      <tr> 
       <td><label for="firstname"><?php echo $this->__('Name:') ?></label></td> 
       <td> 
        <div class="input-box"> 
         <input type="text" name="firstname" id="firstname" title="<?php echo $this->__('Name') ?>" class="input-text" /> 
        </div> 
       </td> 
      </tr> 
      <tr> 
       <td> <label for="newsletter"><?php echo $this->__('Email:') ?></label></td> 
       <td> 
        <div class="input-box"> 
         <input type="text" name="email" id="newsletter" title="<?php echo $this->__('Sign up for our newsletter') ?>" class="input-text required-entry validate-email" /> 
        </div> 
       </td> 
      </tr> 
      <tr> 
       <td></td> 
       <td> 
        <div class="actions"> 
         <button type="submit" title="<?php echo $this->__('Subscribe') ?>" class="button"><?php echo $this->__('Sign Up') ?></button> 

        </div> 
       </td> 
      </tr> 
     </table> 

    </div> 
</form> 

Il y a un même post mais je pense qu'il est outdates maintenant que je ne peux pas sembler trouver une fonction _prepareSave.

Quelqu'un peut-il aider dans la bonne direction?

Merci, Billy

Répondre

1

Le bulletin d'information et des tables abonnés ne contiennent pas de champs FirstName et LastName au moins dans la dernière version, Magento EE 1.9.1.1.

Si vous souhaitez ajouter un champ supplémentaire à la table d'abonné, vous devez mettre à jour la méthode subscribe de Mage_Newsletter_Model_Subscriber classe (il reçoit juste une adresse e-mail, vous devez passer des arguments supplémentaires) et le contrôleur Mage_Newsletter_SubscriberController, l'action newAction si qu'il extrait d'autres champs du tableau $ _POST et l'utilise dans la création de l'abonnement à la newsletter (recherche de l'instruction $status = Mage::getModel('newsletter/subscriber')->subscribe($email)).

+0

oui vous avez raison, le bulletin n'ont les noms et prénoms, mais ils ne sont utilisés que pour les clients qui enregistrent et vérifient abonnez-vous à bulletin. Bravo – iamjonesy

+0

Salut pouvez-vous développer votre réponse à l'endroit où trouver les classes et quelques exemples pour 1.9? Merci. Je commence juste le développement de Magento – TheBlackBenzKid

2

Un peu solution plus facile pour ajouter des champs personnalisés à Magento objet abonné newsletter peut être trouvé here