Отправка почты с помощью API joomla может пригодится в любом компоненте, модуле или плагине.
Например, можно добавить форму заказа в layout материла, а для цены добавить поле для материалов.
Вот такой вариант кода:
$app = JFactory::getApplication();
$fio = $app->input->getPost('zak_fio', '');
if(!empty($fio)){
$mailer = JFactory::getMailer();
$config = JFactory::getConfig();
$sender = array(
$config->get( 'mailfrom' ),
$config->get( 'fromname' )
);
$mailer->setSender($sender);
$recipient = array( 'a@yandex.ru' );
$mailer->addRecipient($recipient);
$phone = $app->input->getPost('zak_phone', '');
$shkaf = $app->input->getPost('zak_shkaf', '');
$body = 'Имя: ' . $fio . '<br>';
$body .= 'Телефон: ' . $phone . '<br>';
$body .= 'Шкаф: ' . $shkaf . '<br>';
$mailer->setSubject('Заказ с сайта');
$mailer->isHtml(true);
//$mailer->Encoding = 'base64';
$mailer->setBody($body);
// Optional file attached
//$mailer->addAttachment(JPATH_COMPONENT.'/assets/document.pdf');
$send = $mailer->Send();
if ( $send !== true ) {
echo 'Ошибка во время отправки почты.';
} else {
echo '<div class="alert alert-info">Заказ отправлен!</div>';
}
}
Тэг для формы:
<form action="'.$_SERVER['REQUEST_URI'].'" method="post"> <p> <input type="text" class="required" required="required" name="zak_phone" placeholder="Ваш телефон" value="" /> </p> </form>
Еще вариант добавления формы в материал это сделать модуль с формой, и добавлять модуль в материал с помощью кнопки Модуль.