I want to override the original main_template of Plone without using z3c.jbot, only using ZCML directives (browser:page?).
Is there a way to override a default Plone4 template only using ZCML?
ZCML can be used to override views.
Older Plone templates, like main_template.pt, use portal_skins layering facilities.
More about it in here:
Your addon needs GenericSetup profile
You register skin layers in GenericSetup XML
You register skin layers in ZCML
skin templates are overridden in the order given by portal_skins Properties tab (you can test and manage TTW after ZCML part is done)