Skip to content

Email Footer Configuration Uk

Місця, в яких можна конфігурувати Email Footer

Email Footer - це блок тексту, який зазвичай додається до кінця електронної пошти з метою надання додаткової інформації про відправника та його компанію, а також для забезпечення контактної інформації та посилань на соціальні мережі. У більшості випадків Email Footer створюється вручну та копіюється в кожен лист окремо. Однак в Frappe існують способи реалізації email футера, який автоматично підтягується до кожного листа, до певного email акаунта або до всієї органзіації. Існують три місця, в яких можна змінити Email Footer в ERPNext системі.

System Settings

В доктайпі System Settings можна змінити футер в вікні ,Email. В цьому вікні є форма, в якій можна написати стандартний футер та такі налаштування:

  • Disable Standard Email Footer - відключає стандартний футер з написом “Sent via ERPNext”
  • Hide footer in auto email reports - ховає футер в авто репортах імейлу
  • Send document Web View link in email - висилає посилання на веб-перегляд документу в імейлі

Щоб змінити футер у System Settings, виконайте наступні кроки:

  1. Зайдіть у System Settings.
  2. Відкрийте вікно Email.
  3. Знайдіть форму Email Footer та введіть у неї потрібний текст футера.
  4. Якщо потрібно, встановіть налаштування згідно з ваших потреб.
  5. Збережіть зміни за допомогою клавіші Save

Email Account

В доктайпі Email Account можна створити новий або вибрати вже існуючий імейл акаунт. Кожен такий акаунт має свою опцію Footer, в якій можна написати футер саме для конткретного імейл акаунта.

Щоб змінити Email Footer у доктайпі Email Account, виконайте наступні кроки:

  1. Зайдіть у доктайп Email Account.
  2. Оберіть імейл акаунт, для якого потрібно змінити Email Footer.
  3. У формі редагування імейл акаунту знайдіть поле Footer.
  4. Введіть потрібний текст Email Footer для цього акаунту.
  5. Натисніть кнопку Save, щоб зберегти зміни.

За допомогою панелі інструментів можна змінювати шрифт тексту, розмір, колір, вставляти посилання та зображення в текст. Наприклад, футер, створений за допомогою панелі інструментів може виглядати так:

Також в вікні Footer можна використовувати і html-теги:

Зверніть увагу! Якщо в System Settings в меню Email написати футер та додати футер в кокретний імейл акаунт, то відправляючи імейл з цього акаунта буде накладатись два футера: з System Settings та Email Account

Приклади футерів, написаних в System Settings та Email Account доктайпах

<div style="font-size: 14px; color: #808080; margin-top: 20px;">
<img src="https://example.com/logo.png" alt="Logo" style="height: 30px; margin-bottom: 10px;">
<div>1234 Main St. Anytown, USA 12345</div>
<div>Phone: 555-555-5555 | Email: info@example.com</div>
</div>
<div style="font-size: 14px; color: #808080; margin-top: 20px;">
<img src="https://example.com/logo.png" alt="Logo" style="height: 30px; margin-bottom: 10px;">
<div>1234 Main St. Anytown, USA 12345</div>
<div>Phone: 555-555-5555 | Email: info@example.com</div>
<br>
<a href="https://www.facebook.com/example"><img src="https://example.com/images/facebook.png" alt="Facebook" style="height: 20px; margin-right: 10px;"></a>
<a href="https://twitter.com/example"><img src="https://example.com/images/twitter.png" alt="Twitter" style="height: 20px; margin-right: 10px;"></a>
<a href="https://www.linkedin.com/company/example"><img src="https://example.com/images/linkedin.png" alt="LinkedIn" style="height: 20px; margin-right: 10px;"></a>
<a href="https://www.instagram.com/example"><img src="https://example.com/images/instagram.png" alt="Instagram" style="height: 20px; margin-right: 10px;"></a>
</div>

HTML Templates

В Frappe під кожен доктайп існує свій шаблон, написаний з допомогою HTML, мови розмітки гіпертексту, та Jinja, рушія шаблонів для мови програмування Python. Ці шаблони знаходяться в файловій системі сайту. Шаблон для зміни email футера називається email_footer.html і знаходиться в файловій системі за таким шляхом:
/workspace/development/frappe-bench/apps/frappe/frappe/templates/emails/email_footer.html

В email_footer.html є три основних блоки email_account_footer, sender_adress та default_mail_footer. Змінюючи блоки email_account_footer та default_mail_footer можна змінити футер конкретного email акаунта та стандартного футера організації відповідно.

Змінюючи футер в ERP системі користувач може використовувати не тільки звичайний текст, а й додавати HTML теги, за допомогою яких цей текст можна редагувати та додавати різний медіа контент (зображення, гіфки і т.д.). Докладну документацію з HTML можна знайти за цим посиланням:
https://developer.mozilla.org/en-US/docs/Web/HTML

Основні теги мови HTML

  • <div class=“назва_класу”>ваш текст</div> - створення контейнера з контентом (в атрибуті class=” ” вказується назва класова назва контейнеру, до якого потім можна отримати доступ за цією назвою)
  • <a href=“url”>ваш текст</a> - створення посилання (в атрибуті href=” ” вказується посилання певного ресурсу)
  • <br> - створення нового рядка
  • <b>ваш текст</b> - робить жирний шрифт тексту
  • <img src=“шлях/до/зображення”> - вставлення зображення (в атрибуті src=” ” вказується посилання або шлях до ресурсу)

Як правильно використовувати HTML теги для Email Footer

При використанні HTML тегів для створення Email Footer слід враховувати наступні рекомендації:

  • Використовуйте лише HTML теги, які підтримуються всіма поштовими сервісами та клієнтами електронної пошти.
  • Не використовуйте CSS стилі у тегах, оскільки вони можуть бути заблоковані деякими поштовими сервісами та клієнтами електронної пошти
  • Використовуйте абсолютні посилання на зображення та інші медіа-елементи. Вони повинні бути розміщені на вашому веб-сайті або на зовнішньому хостингу.
  • Використовуйте стандартні шрифти, такі як Arial, Verdana або Times New Roman, оскільки деякі поштові сервіси та клієнти електронної пошти можуть не підтримувати інші шрифти.
  • Не використовуйте JavaScript або інші скриптові мови у HTML тегах, оскільки вони можуть бути заблоковані деякими поштовими сервісами та клієнтами електронної пошти.
  • Не використовуйте вкладені таблиці у HTML тегах, оскільки вони можуть спотворити вигляд вашого Email Footer на деяких поштових сервісах та клієнтах електронної пошти.
  • Відстежуйте тестування вашого Email Footer на різних поштових сервісах та клієнтах електронної пошти, щоб переконатися, що він відображається належним чином.
  • Додайте альтернативний текст до зображень у випадку, якщо вони не завантажуються або не відображаються коректно. Це допоможе забезпечити доступність вашого Email Footer для людей з візуальними обмеженнями та зробить його більш SEO-френдлі.

Як змінити футер за допомогою HTML шаблонів

У файлі email_footer.html також можна використовувати Jinja, рушій шаблонів для мови програмування Python. Це дає можливість динамічно змінювати вміст футера залежно від умов. Наприклад, можна вивести назву компанії, що відправляє лист, яка буде залежати від вибраного імейл акаунту, використовуючи такий код:

{% if email_account_footer %}
{{ email_account_footer }}
{% else %}
{{ default_mail_footer }}
{% endif %}
Best regards,
{% if email_account_footer %}
{{ email_account_footer.company_name }}
{% else %}
{{ default_mail_footer.company_name }}
{% endif %}

Цей код використовує умову if/else, щоб перевірити, чи встановлено спеціальний футер для конкретного імейл акаунту. Якщо так, то виводиться текст футера із вибраного акаунту, якщо ні, то виводиться стандартний футер організації. Далі відображається назва компанії, яка відправляє лист, і яка також залежить від вибраного імейл акаунту.

Для використання Jinja в email_footer.html потрібно мати базові знання з програмування на мові Python та зрозуміти, як працюють Jinja шаблони. Jinja дозволяє використовувати змінні, цикли, умовні оператори, фільтри та багато іншого, щоб створювати більш складні та динамічні шаблони.

Наприклад: нам потрібно отримати поле designation поточного користувача, щоб ми могли використовувати цю інформацію у нижньому колонтитулі за замовчуванням. Щоб отримати це поле в Jinja API, є кілька корисних функцій:

  • frappe.get_all(doctype, filters, fields, order_by, start, page_length, pluck)

Повертає список усіх записів DocType. Повертає лише назви документів, якщо аргумент fields не вказано.

  • frappe.get_list(doctype, filters, fields, order_by, start, page_length)

Подібно до frappe.get_all, але фільтруватиме записи для користувача поточного сеансу на основі дозволів.

Повну документацію Jinja API для Frappe можна знайти за цим посиланням: https://frappeframework.com/docs/v14/user/en/api/jinja#frappeget_url

Щоб отримати поле designation, ми використаємо frappe.get_list() (оскільки він може збирати інформацію про користувача поточного сеансу):

{% set user_designation = frappe.get_list('Employee', fields=['designation']) %}
{{ user_designation[0]['designation'] }}

Ми створили змінну user_designation, яка містить frappe.get_list(‘Employee’, fields=[‘designation’]) за допомогою ключового слова set. У функції frappe.get_list було вказано ‘Employee’ doctype як перший параметр і поле ‘designation’ у полях як другий параметр. Отже, тепер змінна user_designation містить інформацію про поле позначення поточного користувача.

Ми можемо показати цю інформацію в нижньому колонтитулі за допомогою {{ user_designation[0][‘designation’] }} Це означає, що зі списку user_designation ми беремо 0 елемент і з цього елемента беремо значення за ключем позначення

Також можна використовувати цикли та умовні оператори для відображення різного контенту в залежності від умов. Наприклад, можна вивести список контактів компанії в email футері, використовуючи такий код:

{% if contacts %}
Contacts:
<ul>
{% for contact in contacts %}
<li>{{ contact.full_name }} - {{ contact.email_id }}</li>
{% endfor %}
</ul>
{% endif %}

У цьому коді ми використовуємо умовний оператор if, щоб перевірити, чи є контакти для відображення. Якщо так, то ми використовуємо цикл for, щоб пройтися по кожному контакту та вивести його ім’я та електронну адресу.

Загалом, використання Jinja в email_footer.html дозволяє створювати більш гнучкі та змістовні email футери, які можуть працювати із ERP системою. Також використання Jinja дозволяє зменшити кількість дублювання коду та зробити шаблони більш читабельними та підтримуваними. Наприклад, можна створити окремий файл зі змінними, які можуть бути використані в різних шаблонах, наприклад, в файлі email_variables.py:

from frappe.utils import now_datetime
def get_datetime():
return now_datetime().strftime('%A, %d %B %Y at %I:%M %p')

У цьому файлі ми створили функцію get_datetime(), яка повертає поточну дату та час у зручному форматі. Цю функцію можна використовувати в будь-якому Jinja шаблоні, використовуючи такий код:

Sent on {{ email_variables.get_datetime() }}

Таким чином, замість повторного введення коду для форматування дати та часу в кожному шаблоні, ми можемо використовувати функцію з файлу email_variables.py. Загалом, використання HTML тегів та Jinja шаблонів дозволяє створювати більш гнучкі та змістовні email футери в ERP системі, які можуть допомогти в покращенні взаємодії з клієнтами та партнерами.