1
カスタムモジュール内のすべての請求書メールテンプレートをリストしたいと思います。私は自分のカスタム管理フォームに1つのドロップダウンを追加したいと思います。magento 2で請求書の電子メールテンプレートをリストする方法は?
カスタムモジュール内のすべての請求書メールテンプレートをリストしたいと思います。私は自分のカスタム管理フォームに1つのドロップダウンを追加したいと思います。magento 2で請求書の電子メールテンプレートをリストする方法は?
一覧仮定し、次のようにフォームフィールドを持っている:
$fieldset->addField(
'invoice_template_id', 'select', [
'label' => __('Select Email Template'),
'title' => __('Select Email Template'),
'name' => 'invoice_template_id',
'required' => true,
'class' => 'selectopt',
/* 'css_class' => 'hidden', */
'values' => $this->getEmailTemplate()
]
);
と請求書のカスタムメールテンプレートのコレクションを取得することができます関数を記述:
/**
Email Template List
* */
public function getEmailTemplate() {
$emailList = array();
$collection = $this->emailTemplateCollectionFactory->create();
foreach ($collection as $list) {
if (($list->getOrigTemplateCode() == "sales_email_invoice_template")) {
$emailList[$list->getTemplateId()] = $list->getTemplateCode();
} elseif (($list->getOrigTemplateCode() == "sales_email_invoice_comment_guest_template")) {
$emailList[$list->getTemplateId()] = $list->getTemplateCode();
} elseif ($list->getOrigTemplateCode() == "sales_email_invoice_comment_template") {
$emailList[$list->getTemplateId()] = $list->getTemplateCode();
}elseif ($list->getOrigTemplateCode() == "sales_email_invoice_guest_template") {
$emailList[$list->getTemplateId()] = $list->getTemplateCode();
}
}
return $emailList;
}
それが唯一の請求書に関連するカスタムテンプレートのリストを返します。