Контактная форма Joomla 3.x - автоматическое редактирование электронной почты

Имейте в виду, что я не очень хорошо знаком с JavaScript и делаю это, чтобы помочь коллеге.

Я пытаюсь внести изменения в автоматические ответы по электронной почте контактной формы. Изменение, которое я хочу внести, - это когда человек отправляет электронное письмо кому-то на веб-сайте, ответ отправляется обратно человеку, в котором говорится: «Это копия следующего сообщения, которое вы отправили ПЕРСОНАЛУ ВЕБ-САЙТА через НАЗВАНИЕ ВЕБ-САЙТА». Человек, получающий электронное письмо, получает только имя человека, который его отправил, и сообщение.

Мне нужно добавить сообщение «Это копия следующего сообщения, которое вы отправили ПЕРСОНАЛУ ВЕБ-САЙТА через НАЗВАНИЕ ВЕБ-САЙТА» на другой адрес электронной почты, потому что один человек получает все электронные письма и отправляет их соответствующему лицу. Я знаю, это звучит необоснованно, но это то, о чем просили.

Я нашел код в contact.php, но не совсем уверен, как внести изменения.

Здесь код получает нужную мне часть:

    // Check whether email copy function activated
        if ($copy_email_activated == true && !empty($data['contact_email_copy']))
        {
            $copytext    = JText::sprintf('COM_CONTACT_COPYTEXT_OF', $contact->name, $sitename);
            $copytext    .= "\r\n\r\n" . $body;
            $copysubject = JText::sprintf('COM_CONTACT_COPYSUBJECT_OF', $subject);

            $mail = JFactory::getMailer();
            $mail->addRecipient($email);
            $mail->addReplyTo($email, $name);
            $mail->setSender(array($mailfrom, $fromname));
            $mail->setSubject($copysubject);
            $mail->setBody($copytext);
            $sent = $mail->Send();
        }

        return $sent;
    }
}

И мне нужно это для работы с

// Prepare email body
    $prefix = JText::sprintf('COM_CONTACT_ENQUIRY_TEXT', JUri::base());
    $body   = $prefix . "\n" . $name . ' <' . $email . '>' . "\r\n\r\n" . stripslashes($body);

    // Load the custom fields
    if (!empty($data['com_fields']) && $fields = FieldsHelper::getFields('com_contact.mail', $contact->email_to, true, $data['com_fields']))
    {
        $output = FieldsHelper::render(
            'com_contact.mail',
            'fields.render',
            array(
                'context' => 'com_contact.mail',
                'item'    => $contact,
                'fields'  => $fields,
            )
        );

        if ($output)
        {
            $body .= "\r\n\r\n" . $output;
        }
    }

    $mail = JFactory::getMailer();
    $mail->addRecipient($contact->email_to);
    $mail->addReplyTo($email, $name);
    $mail->setSender(array($mailfrom, $fromname));
    $mail->setSubject($sitename . ': ' . $subject);
    $mail->setBody($body);
    $sent = $mail->Send();

Я думал, что это будет так же просто, как скопировать какой-нибудь код, но я ошибался. Я знаю, что в Joomla есть переопределения, чтобы предотвратить изменение основного кода. Как только я смогу это выяснить, я могу выполнить переопределение, чтобы правильно добавить свои изменения.

Заранее спасибо!

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
0
99
1

Ответы 1

Извините, я пользовался мобильным телефоном, поэтому проверить сложно

// Check whether email copy function activated if ($copy_email_activated == true && !empty($data['contact_email_copy'])) { $copytext = JText::sprintf('COM_CONTACT_COPYTEXT_OF', $contact->name, $sitename); $copytext .= "\r\n\r\n" . $body; $copysubject = JText::sprintf('COM_CONTACT_COPYSUBJECT_OF', $subject); 

// Загружаем настраиваемые поля if (! Empty ($ data ['com_fields']) && $ fields = FieldsHelper :: getFields ('com_contact.mail', $ contact-> email_to, true, $ data ['com_fields']) ) {$ output = FieldsHelper :: render ('com_contact.mail', 'fields.render', array ('context' => 'com_contact.mail', 'item' => $ contact, 'fields' => $ fields ,)); if ($ output) {$ copytext. = "\ r \ n \ r \ n". $ output; }}

$ mail = JFactory :: getMailer (); $ mail-> addRecipient ($ email); $ mail-> addReplyTo ($ email, $ name); $ mail-> setSender (массив ($ mailfrom, $ fromname)); $ mail-> setSubject ($ copysubject); $ mail-> setBody ($ copytext); $ sent = $ mail-> Отправить (); } return $ sent; }}

Другие вопросы по теме