Joomla has tried to create a content manager / CCK for several years now. Though the project has been inactive, there are a few database tables that Joomla still uses, mainly for storing content history. Although the original UCM in its spirit isn’t part of Joomla, similar functionality has been introduced by article fields.
So, with com_content already there what purpose does a new UCM extension serve you'll ask? A UCM gives the flexibility of defining multiple "types" of content. This is very useful so you could create types like Films, Actors, Banners all on the same site. Each type has its own fields, and a list of records from each type can be fetched. You could even relate these items together to build an IMDb clone!
We’re happy to release TJ UCM, our CCK extension for Joomla. It has been in the works for a few years now, mainly on projects for our customers. We are happy to make it available to everyone for use. Built on top of TJ Fields, UCM lets you create fully customizable forms (types) having various types of fields. The component has been in development before the time com_fields got introduced in Joomla. We were, in fact, trying to get com_tjfields to be the field manager, but it didn’t get stable in time. So it’s using com_tjfields. In the future, we may build a migration over to com_fields.
Some feature highlights
Save as Draft
Especially useful for lengthy forms, this feature allows saving form data in “draft” status. Form level field validations are bypassed in this case and users can come back later and complete the form. The record can be moved in the published state only after all fields are valid.
The Ajax-based autosave of form in UCM will autosave the form data in draft mode when a user changes the value of any of the fields on the form. This ensures that the user does not lose the changes done if the form is accidentally closed or any other issue occurs while filling the form.
A type can have a sub-form field which will load another UCM type in a sub-form. The subform field can also be repeatable, so multiple sub-records can be added.
Easily create different categories for different UCM Types and store the items of the UCM Type against them. Eg. Consider a company that has created a form to collect data of aspirants to join the company in different departments (Accounts, Marketing, etc. In this case, you can create UCM Type categories like “Accounts”, “Marketing” and add the “UCM-Category” field in the form which will help in storing the data of people applying for different departments.
APIs via com_api are available to fetch types, type details, records of a single type and record details i.e. all read APIs are available. Write APIs will also be released soon
Type and Field permissions
UCM has the flexibility to control the access of UCM Types and Fields in them to show/hide UCM Types and Fields from users of different user groups.
We continue to actively develop TJ UCM, and continue adding features often. A quick list of features to come
Full API coverage
We will release write APIs and other necessary APIs to make UCM a way to create a truly “headless CMS” in Joomla.
Soon, you will be able to use MongoDB as a database to store records instead of MySQL. This will make searching and filtering records very efficient.
Allow the sharing of category trees across UCM types.
Do use TJ UCM in your next project and share feedback with us to improve this extension further.