Content organization is a feature that all content management system worth its salt provides. Since most CM system users are predominantly use GUI based operating system and are used to Folders, content management systems have similar implementation.WebCenter Content provides content organization using Folders_g component. This component was part of Document Management feature in 10g and should be enabled in 11g for users to see them.
Folders in UCM is virtual. i.e when you delete a folder contents that are inside them are not deleted, contents hold reference to folders as a metadata field.
One can create hierarchical folder structure as per business needs add contents to them. Later one can drill down or navigate using folder to find there contents.
But the folder view provides very little information of the contents that are grouped under them.
|Default Folder View|
Below are the steps to add additional column to this default view. Lets add Title for the content items inside a folder.
- Identify the service: If your preffered view is Oracle Top Menus then, one can navigate to the folder and look at page URL. We see COLLECTION_DISPLAY is the service that is used to show the contents of a folders.
- Identify the template: Open Folders_g component in Component wizard and look for COLLECTION_DISPLAY service description. We see COLLECTION_DISPLAY as the template name
- Identify the htm page: Navigate to
\oracle\ucm\server\custom\Folders_g\templates open collectioninterface_template.hda and search for COLLECTION_DISPLAY. we will see collectiondisplay.htm
- collectiondisplay.htm is the file that controls the display view of folders
- Form here on search begins for the right includes to modify to add one more column to the view.
- slim_result_table_header is the include which needs to be over ridden to add a header column.In this include <$loop ListFields$> is the loop that controls the column headers. This result set is part of the java method. Over riding a java method is complex and should be used a last option during customization. There fore after this loop add new column name that should be displayed on the page.
- slim_result_table_content_row is the include which needs to be over ridden to add corresponding column value for each content inside a folder. In this include as well <$loop ListFields$> prints the values for individual items. After this loop add the value that should showed to in the new column.
- We can get the required values from either CONTENTS result set object that is available in this service.
|Custom Folder View|