Du kannst, soweit ich das verstanden hab, bei Ableitungen keinen neuen äußeren Block definieren, nur einen inneren.
Es geht also nicht
{% sw_extends '@Storefront/storefront/page/product-detail/buy-widget-form.html.twig' %}
{%block_my_block %}
Dein Code
{% endblock %}
sondern nur
{% sw_extends '@Storefront/storefront/page/product-detail/buy-widget-form.html.twig' %}
{% block page_product_detail_buy_form_inner %}
{%block_my_block %}
Dein Code
{% endblock %}
{{ parent() }}
{% endblock %}
Das parent() musst Du dann, je nach dem ob der Code vorher oder hinterher kommen soll, setzen. Brauchst Du es mittendrin, musst Du Dir einen entsprechenden Block innerhalb suchen, wo es passt.
Willst Du include verwenden, dann müsstest Du meiner Meinung nach die übergeordnete Datei modifizieren (das können dann mehrere sein, andernfalls wird Dein Template nicht geladen). Da kannst Du dann aber tatsächlich einen neuen äußeren Block definieren.
{%block_my_block %}
Dein Code
{% endblock %}
{% sw_include '@Storefront/storefront/page/product-detail/buy-widget-form.html.twig' %}
Eigene Parameter übergibt man so (with):
{% sw_include '@Storefront/storefront/component/product/card/wishlist.html.twig' with {
appearance: 'circle',
productId: id
} %}