Important
We are updating the images for OroCommerce version 6.1 to align with the latest changes in the back-office design. During this transition, some images may still show older versions. Thank you for your patience as we work to update all visuals to reflect these changes.
CLI Commands (EmailBundle)
oro:email:update-associations
To update email associations, use the following command:
php bin/console oro:email:update-associations
oro:email:generate-md5
To generate and print MD5 hashes for email template contents from oro_email_template table, use the command below. These hashes can be used in email migrations.
php bin/console oro:email:generate-md5
oro:cron:email-body-sync
To synchronizes email bodies, use the following command:
php bin/console oro:cron:email-body-sync
oro:debug:email:template
To display a list of current email templates for an application or an exact template, use the following command:
php bin/console oro:debug:email:template
oro:debug:email:template:compile
To render an email template, use the command below. Optionally, it can send a compiled email to the recipient’s email address.
php bin/console oro:debug:email:template:compile
oro:debug:email:variables
To display email template variables, use the following command:
php bin/console oro:debug:email:variables
oro:email:template:export
To export email templates, use the following command:
php bin/console oro:email:template:export
oro:email:template:import
To import email templates from the directory, use the following command:
php bin/console oro:email:template:import
Commands in Use (Examples)
The following example uses SMTP settings and sends a message to the admin@example.com
email address:
php bin/console oro:debug:email:template:compile order_confirmation_email --entity-id=16 --recipient=admin@example.com
The following example outputs EMAIL content to stdout:
php bin/console oro:debug:email:template:compile order_confirmation_email --entity-id=16
The following command displays a list of available templates:
php bin/console oro:debug:email:template
ID |
NAME |
ENTITY CLASS |
TYPE |
SYSTEM |
VISIBLE |
EDITABLE |
PARENT |
1 |
force_reset_password |
Oro\Bundle\UserBundle\Entity\User |
html |
Yes |
Yes |
Yes |
N/A |
2 |
user_reset_password |
Oro\Bundle\UserBundle\Entity\User |
html |
Yes |
Yes |
Yes |
N/A |
3 |
user_reset_password_as_admin |
Oro\Bundle\UserBundle\Entity\User |
html |
Yes |
Yes |
Yes |
N/A |
4 |
user_change_password |
Oro\Bundle\UserBundle\Entity\User |
html |
Yes |
Yes |
Yes |
N/A |
99 |
order_confirmation_email |
Oro\BundleOrderBundle\Entity\Order |
html |
Yes |
Yes |
Yes |
N/A |
The following command displays information for a specific template:
php bin/console oro:debug:email:template order_confirmation_email
@name = order_confirmation_email
@entityName = Oro\Bundle\OrderBundle\Entity\Order
@subject = Your order has been received.
@isSystem = 1
@isEditable = 1
{% extends 'base.html.twig' %}
{% block content %}
...
{% endblock %}
The following command displays system-wide variables:
php bin/console oro:debug:email:variable
Name |
Title |
Type |
Value |
system.appURL |
Application URL |
string |
|
system.currentDate |
Current date |
string |
May 32, 2018 |
system.currentTime |
Current time |
string |
12:03 PM |
The following command displays class-based variables:
php bin/console oro:debug:email:variable --entity-class="Oro\Bundle\OrderBundle\Entity\Order"
System Variables
Name |
Title |
Type |
Value |
system.appURL |
Application URL |
string |
|
system.currentDate |
Current date |
string |
Nov 1, 2021 |
system.currentDateTime |
Current date & time |
string |
Nov 1, 2021, 10:43 AM |
system.currentTime |
Current time |
string |
10:43 AM |
Entity Variables
Name |
Title |
Type |
entity.acContactCount |
Total times contacted |
integer |
entity.acContactCountIn |
Total number of incoming contact attempts |
integer |
entity.acContactCountOut |
Total number of outgoing contact attempts |
integer |
entity.acLastContactDate |
Last contact datetime |
datetime |
entity.acLastContactDateIn |
Last incoming contact datetime |
datetime |
entity.acLastContactDateOut |
Last outgoing contact datetime |
datetime |
entity.baseSubtotalValue |
Subtotal In Base Currency |
money |
entity.baseTotalValue |
Total In Base Currency |
money |
entity.billingAddress |
Billing Address |
ref-one |
entity.createdAt |
Created At |
datetime |
entity.currency |
Currency |
string |
entity.customer |
Customer |
ref-one |
entity.customerNotes |
Customer Notes |
text |
entity.customerUser |
Customer User |
ref-one |
entity.disablePromotions |
Disable Promotions |
boolean |
entity.estimatedShippingCostAmount |
Estimated Shipping Cost Amount |
money |
entity.id |
ID |
integer |
entity.identifier |
Order Number |
string |
entity.internalStatus |
Internal Status |
enum |
entity.organization |
Organization |
ref-one |
entity.overriddenShippingCostAmount |
Overridden Shipping Cost Amount |
money |
entity.owner |
Owner |
ref-one |
entity.paymentTerm7c4f1e8e |
Payment Term |
manyToOne |
entity.poNumber |
PO Number |
string |
entity.shipUntil |
Do Not Ship Later Than |
date |
entity.shippingAddress |
Shipping Address |
ref-one |
entity.shippingMethod |
Shipping Method |
string |
entity.shippingMethodType |
Shipping Method Type |
string |
entity.sourceEntityClass |
Source Entity Class |
string |
entity.sourceEntityId |
Source Entity Id |
integer |
entity.sourceEntityIdentifier |
Source Entity Identifier |
string |
entity.updatedAt |
Updated At |
datetime |
entity.url.commerceView |
oro.email.emailtemplate.variables.url.commerceView.label |
string |
entity.url.create |
Entity Create Page |
string |
entity.url.index |
Entity Grid Page |
string |
entity.url.update |
Entity Update Page |
string |
entity.url.view |
Entity View Page |
string |
entity.warehouse |
Warehouse |
manyToOne |
entity.website |
Website |
ref-one |
The following command displays entity-based variables:
php bin/console oro:debug:email:variable --entity-class="Oro\Bundle\OrderBundle\Entity\Order" --entity-id=16
Entity Variables
Name |
Title |
Type |
Value |
entity.acContactCount |
Total times contacted |
integer |
|
entity.url.create |
Entity Create Page |
string |
|
entity.url.index |
Entity Grid Page |
string |
|
entity.url.update |
Entity Update Page |
string |
|
entity.url.view |
Entity View Page |
string |
|
The following command exports all email templates:
php bin/console oro:email:template:export {PATH_TO_STORE_EXPORTED_TEMPLATES}
Found 99 templates for export
The following command exports a specific email template:
php bin/console oro:email:template:export --template order_confirmation_email {PATH_TO_STORE_EXPORTED_TEMPLATE}
Found 1 templates for export
The following command imports a specific email template:
php bin/console oro:email:template:import {PATH_TO_TEMPLATES}\order_confirmation_email.html.twig --force
The following command imports email templates from the specified folder:
php bin/console oro:email:template:import {PATH_TO_TEMPLATES} --force
Found 999 templates
"authentication_code" updated
...
"order_confirmation_email" updated