EC-CUBE4ではEC-CUBE3系と異なり、プラグインのテンプレートをapp/template内に配置してオーバーライドすることができませんでした。
そのためテンプレートを修正したいときにプラグインのテンプレートを直接修正するか悩むようなことがちらほらありました。

しかしEC-CUBE4.0.5では待望のプラグインテンプレートをオーバーライドできる機能が加わる予定です。すぐに使いたい方はパッケージ版ではなくGit版で最新のコードを確認してみてください。
弊社のプラグイン「商品ページポイント数表示 for EC-CUBE4」を例にとってご紹介いたします

この記事は一度間違って4.0.4で出してしまい、後から修正しました

プラグインの宣伝

商品詳細ページにポイント数を表示するプラグインです。規格選択時のポイント数動的表示にも対応しています。

獲得ポイント数表示プラグイン

https://www.ec-cube.net/products/detail.php?product_id=2102

ポイント数を表示しているソースコードはどこ?

app/Plugin/ShowPointAmount4/Resource/template/product_detail_point.twig というファイルで商品詳細ページのテンプレートにポイント数を表示しています。

ec-productRole__priceというクラスの要素の直後にポイント数のブロックを挿入するという内容になっています。つまり、もしテンプレートを修正していて、ec-productRole__priceというクラスがProduct/detail.twig内から削除されているとプラグインが動作しません。

<div id="ec-point" class="ec-productRole__code">
    ポイント:
    <span class="ec-point__point point-default">{{ point_min|number_format }}{% if point_min != point_max  %} ~ {{ point_max|number_format }}{% endif %}</span>pt
</div>

<script>
    $(function() {
        $('.ec-productRole__price').after($('#ec-point'))
    })
</script>

app/template/plugin/[プラグインコード]でオーバーライド

そこでproduct_detail_point.twigをコピーして、app/template/plugin/ShowPointAmount4/product_detail_point.twig に配置します。
app/template/plugin/[プラグインコード]の中に配置するのがポイントです。

このファイルは好きに書き換えることが可能ですので、ec-productRole__priceクラスの直後ではなく好きな場所に表示することが可能です。すばらしいEC-CUBE4.0.5!!!(予定)

Product/detail.twigに直接書いた方が早いという話も..

ただ実際はプラグインのテンプレートをオーバーライドするよりもProduct/detail.twigに直接書いてしまった方が早いです。
その際のポイントは「is defined」を使ってプラグインが無効化された時にエラーとならないよう対応しておくことです。

{% if point_min is defined  and point_max is defined  %}
<div id="ec-point" class="ec-productRole__code">
    ポイント:
    <span class="ec-point__point point-default">{{ point_min|number_format }}{% if point_min != point_max  %} ~ {{ point_max|number_format }}{% endif %}</span>pt
</div>
{% endif %}

しかし元のテンプレートをなるべく修正したくないような時もありますので、プラグインテンプレートのオーバーライドは覚えておいて損はない技だと思います。