Loosely speaking, a newsroom is the place where journalists—reporters, editors, and producers, along with other staffers—work to gather news to be published in a newspaper or magazine or broadcast on television, cable or radio. As you have known already, Liferay Portal is an enterprise web platform for building business solutions that deliver immediate results and long-term value. This article will use The Network as an example to show:
- Which kind of portal core features leveraged to build social-media-rich newsroom on top of Liferay.
- Which kind of new features added to build social-media-rich newsroom on top of Liferay.
The Network is trying to tell stories and share information on the topics that are the most important, namely: Video, Collaboration, Core Networks, Mobility, Security, Data Center, Culture … and, more parochially to Social Media. The Network requires an environment where the editorials team could prepare releases in the staging and remotely publish releases to the Production. Technically, it mainly manages five content types.
Feature
Press release
Video
-
Podcast
Bookmark
Main features overview
- LDAP users and user group import – speed up the LDAP import processes and Liferay authentication
There is a big user base in over 50K+ user groups in LDAP. When logged in as a user from LDAP, it took 20-30 seconds by default. After applying the new feature fix patch, it takes less than 1 second. Refer to LPS-14322.
- Secure the user LDAP password – do not import LDAP user’s password
When importing users from LDAP, user’s info and password got imported. Of course, all passwords stored in Liferay are secure. Especially, the LDAP password mapping field is optional. In some use cases, the fact Liferay stores users’ password is against some companies’ security policy rules. With the new feature fix patch, Liferay would not import user's password from LDAP. Refer to LPS-13933.
- Remote staging and publishing mode
All editorial team work in the clustered staging environment; but open the clustered production to the public only.
- Cache Clustering
Both staging and production are clustered.
- Secure the LDAP user info in the staging
By default, there is a dummy user in both the staging and the product. All editorial users exist in the staging only. Their daily work is to create / update press release, and schedule to publish to the product. This feature got fixed, referring to LPS-17251.
- Keep UUID same in the remote publishing process
Export and imports all assets and their associations: tags, categories, custom fields, etc.
- Federated indexing and search mechanism
Index five content types (more content types) in one place; and index tags, categories, custom fields, views, shared number, etc. Provide services’ URL to search latest views, most viewed, etc.
- Configurable RSS feeds services
Make RSS feeds configurable. Search RSS results from the index – the performance is very good.
- Home URL and friendly URL
Making home URL and web content SEO friendly URL highly configurable in multiple web sites
- Category cloud
Search categories from the index, instead of the database. – The performance is very good.
- Track Social media sharing and most shared
Provide a model to present social media sharing; provide services’ URL to update social media shared info; provide services’ URL to search social media most shared. This is native Liferay tracking system – details will be addressed in another post.
- Integrate Facebook activity, twitter feeds, and so on.
Implementation examples
Latest news, most viewed and most shared – an overview
Searching by FROM date and TO date, filtering by content types, and categories, and pagination – an overview
- Remote staging and publishing mode
Both staging and production have following settings
tunnel.servlet.hosts.allowed=127.0.0.1,SERVER_IP
tunnel.servlet.https.required=false
- Cache Clustering
Both staging and production have following clustering settings
net.sf.ehcache.configurationResourceName=/ehcache/hibernate-clustered.xml
ehcache.multi.vm.config.location=/ehcache/liferay-multi-vm-clustered.xml
image.hook.file.system.root.dir=/share/liferay/data/images
dl.hook.file.system.root.dir=/share/liferay/data/document_library
cluster.link.enabled=true
lucene.replicate.write=true
- Federated indexing and search mechanism
Latest news
?cmd=latest&limit=10&contentType=feature:press-release&categoryId=14788
Parameters:
categoryId=id
limit=number
Most viewed
?cmd=viewed&limit=10&contentType=feature
All News
Parameters:
contenType= all[:feature:press-release:video:podcast:bookmark]
displayDateLT=YYYYMMDD
displayDateGT=YYYYMMDD
categoryIds=id[:id]
- Configurable RSS feeds services
Both feature and press-release – as you can see, no future content got displayed. Is it nice feature?
?cmd=rss&limit=10&contentType=feature|press-release
Feature
?cmd=rss&limit=10&contentType=feature
Press release
?cmd=rss&limit=10&contentType=press-release
- Category cloud
?cmd=categorycloud&limit=10&contentType=feature:press-release
Parameters: contentType=feature[:press-release]
- Track social media sharing and most shared
?cmd=shared&limit=10&contentType=feature&categoryId=14788
Expected features
Of course, there are still a set of features which are expected in newsroom systems. The following are some of them.
- Asset-level scheduling and remote publishing capability, refer to LPS-17235
- Asset-version-based scheduling and remote publishing capability, refer to LPS-17395
- Page-version-based scheduling and remote publishing capability, refer to LPS-6431
- Scheduling and remote publishing dashboard, refer to LPS-17400
- Ability to show indexing progress in Control Panel, refer to LPS-18269
What is your wish-list? Your comments or suggestions?

