To create a content fragment, you can use ‘create’ API reference from ‘com.adobe.cq.dam.cfm ContentFragmentManager’.
Sharing a sample code which you can try to create a content fragment programmatically:
//reference the Content Fragment Manager
@reference
private ContentFragmentManager fragmentManager;
private void createFrag() {
/** fragmentManager.create helps to create a content fragment
parent – The location where the content fragment should be created (for eg. “/content/dam/fragments”)
template – the content fragment template to refer while creating the new fragment
my-test-fragment – name of the fragment
My Test Fragment – title of the fragment **/
ContentFragment myFragment = fragmentManager.create(parent, template, “my-test-fragment”, “My Test Fragment”);
}
Programmatically accessing a content fragment
We need ‘com.adobe.cq.dam.cfm.ContentFragment’ API reference to access a content fragment
//Get the resource of content fragment as below.
Resource fragmentResource = resourceResolver.getResource(“/content/dam/fragments/my-test-fragment”);
//Adapt it to a fragment resource
if (fragmentResource != null) {
ContentFragment fragment = fragmentResource.adaptTo(ContentFragment.class);
// the resource is now accessible through the API
}
Reference: https://helpx.adobe.com/experience-manager/6-5/sites/developing/using/reference-materials/javadoc/co...
Thanks!!