Вы должны создать локальную копию:
приложение / код / ядро / Mage / Информационный бюллетень / контроллеры / SubscriberController.php
Приложение / код / ядро / Mage / Информационный бюллетень / модель / Subscriber.php
В приложении / code / core / Mage / Newsletter / controllers / SubscriberController.php добавить после строки 44:
$firtname = (string) $this->getRequest()->getPost('firstname');
$lastname = (string) $this->getRequest()->getPost('lastname');
Затем измените с:
$status = Mage::getModel('newsletter/subscriber')->subscribe($email);
до:
$status = Mage::getModel('newsletter/subscriber')->subscribe($email,$firtname,$lastname);
Теперь в приложении / code / core / Mage / Newsletter / Model / Subscriber.php отредактируйте подпись функции подписки в строке 307 из:
public function subscribe($email)
до:
public function subscribe($email,$firstname,$lastname)
Добавьте это после строки 338:
$this->setSubscriberFirstname($firstname);
$this->setSubscriberLastname($lastname);
И добавьте для него геттеры и сеттеры:
/**
* Alias for getSubscriberFirstname()
*
* @return string
*/
public function getFirstname()
{
return $this->getSubscriberFirstname();
}
/**
* Alias for setSubscriberFirstName()
*
* @param string $value
*/
public function setFirstname($value)
{
return $this->setSubscriberFirstname($value);
}
/**
* Alias for getSubscriberLastname()
*
* @return string
*/
public function getLastname()
{
return $this->getSubscriberLastname();
}
/**
* Alias for setSubscriberLastname()
*
* @param string $value
*/
public function setLastname($value)
{
return $this->setSubscriberLastname($value);
}
Вам также необходимо добавить столбцы имени и фамилии в newsletter_subscriber, как сказано в другом ответе.