とりあえず頂いたヒントから解決できました。ありがとうございました。
1)入力画面に項目追加
・event.yml
front.entry.index.initialize:
- [onFrontEntryIndexInit, NORMAL]
・[追加するプラグイン]Event.php
public function onFrontEntryIndexInit(EventArgs $event)
{
// フォームの追加
/** @var FormInterface $builder */
// FormBuildeの取得
$builder = $event->getArgument('builder');
// 項目の追加
$builder->add(
self::ADD_TEXT_NAME,
'text',
array(
'required' => false,
'label' => '追加項目',
'mapped' => false,
'attr' => array(
'placeholder' => '追加項目を入力してください',
),
)
);
}
2)確認画面に項目追加
・event.yml
Entry/confirm.twig:
- [onRenderEntryConfirm, NORMAL]
・[追加するプラグイン]Event.php
public function onRenderEntryConfirm(TemplateEvent $event)
{
$wk_name = self::ADD_TEXT_NAME ;
// twigコードにカテゴリコンテンツを挿入
// $event->getSourceでtwigのコードが取れる
$snipet = <<< EOF
<div class="dl_table not_required">
<dl id="confirm_box__{$wk_name}">
<dt>{{ form_label(form.{$wk_name}) }}</dt>
<dd>
<div class="form-group form-inline">
{{ form_widget(form.{$wk_name}) }}
</div>
</dd>
</dl>
</div>
EOF;
$search = '<div id="confirm_box__footer"';
$replace = $snipet.$search;
$source = str_replace($search, $replace, $event->getSource());
$event->setSource($source);
}