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 | https://dev.oro.in/ |
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 | https://dev.oro.in/ |
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 | https://dev.oro.in/admin/order/create |
entity.url.index | Entity Grid Page | string | https://dev.oro.in/admin/order/ |
entity.url.update | Entity Update Page | string | https://dev.oro.in/admin/order/update/16 |
entity.url.view | Entity View Page | string | https://dev.oro.in/admin/order/view/16 |
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