如何在 magento 2 中列出发票电子邮件模板?

How to list out invoice email template in 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;
}

只会return发票相关的自定义模板列表。