7.1 Do you speak Umbraco?
In order to manage websites in several languages, Umbraco once again relies on its tree structure approach, the easiest to understand for developers and contributors alike. No need to translate each content: a language is merely a new branch on the contents tree-structure.
In a monolingual Umbraco website, there is only one page at the root of the tree structure: the home page. With a multi-lingual website, the root has as many home pages as there are languages.
This flexible system makes it possible to easily implement contents or functionalities that are specific to each language, each public.
Coupled with the multi-site (or multi-domain) system integrated in the CMS, it is possible to associate a domain name to part of the tree-structure. For example: fr.monsite.com to the home page "/fr" and en.monsite.com to the page "/en".
7.2 Looking for a needle in a haystack… and finding it!
What do we expect of a search engine? That it finds what we’re looking for, and quickly, regardless of the quantity and nature of the documents. In this respect, the ultra-optimised search engine "Examine", integrated in Umbraco and based on the proven Lucene, boast impressive performances. It can sift through thousands of pages and PDF documents in just a few milliseconds, based on an index.
Examine handles the automatic indexation of all Umbraco contents. So there’s no need to worry about management the index, which is often a tedious task with this type of engine. The index is simply updated after each creation, modification or deletion of content.
More than a search engine, Examine is a set of very complete tools that lets you explore the contents of Umbraco in detail. The Examine API is accessible in .NET, but also via XSLT macros integrated within Umbraco. Moreover, developers familiar with Linq will master this API in just a few minutes. If this rings a bell, below is a code using the Examine API with Linq to retrieve documents:
var query = search.Field("nodeName","hello").Or().Field("metaTitle","hello").Compile();
var searchResults = Searcher.Search(query);
Finally, certain types of documents have intrinsically more value or relevance than others. For example, it is possible to favour the visibility of official publications rather than blog notes.
7.3 Distribution of roles
Managing access rights: this is something that can quickly become a nightmare if there are many contributors. Just like the contents and media, the users are typed in Umbraco. Now that’s consistency for you!
It is possible to simply create a new type of user and attribute (or not) roles among the following list:
- Access to contents
- Access to media
- Access to parameters
- Access to developer tools
- Access to user management
- Browse pages
- Copy a page
- Delete a page
- Move a page
- Publish a page
- Sort pages
- Translate a page
- Update a page
Of course, it is also possible to restrict specifically access for a given user type to the editing of certain pages. You could for example need to create a profile that only has editing access to the press articles on the website, but not to the other pages.
7.4 Guests’ table seating plan
We must lift a common misconception: members are not users. They do not use the back office of the CMS. Members are "specific internet users" who have been given the possibility to identify themselves using a login and password in order to access part of the site designed for them.
Guess what? Umbraco can let you create as many types of members as you want. That is why it is so easy to access. Once you have grasped the concept…
You can create for example a "Forum moderator" type of member that would have the right to modify posts on the forum, or a "Simple member" type that would have no particular rights.
This functionality, fully integrated by default in the CMS guarantees that you enjoy robust security to protect access to your member sections.
7.5 More than 600 strings to its bow
In the Umbraco universe, plug-ins are called ‘packages’. Designed essentially by members of the community, they come and enrich the native base of the back-office.
The CMS features more than 600 packages, ready to be installed: automatic import of thousands of media items, creation of personalised slideshows, insertion of share buttons on the social media… Largely enough to find what you need!
The most frequently used are those that improve the rendering of the editing interfaces: city selector via Google Maps, automatic resizing of images, character limitation, URL shortcut, media selector, etc.
Some packages are free, others not. Often the licences are free for private use, but must be purchased for commercial uses. Prices are very reasonable.
7.6 Don’t worry, be API
Developers will appreciate Umbraco’s API (Application Programming Interface) that includes all the tools necessary to query its database and serve its contents to an application. Simple to use and well documented, it is accessible using .NET code and lets you manage contents, users, members, roles or files (retrieval of values, creation, modification, deletion…)
It is even possible to automate certain tasks such as systematic sending of e-mail after each creation of content, document sort or exporting to Excel the list of users after each modification.
Semmeo ranking: Number of plug-ins
The Umbraco world has around 600 plug-ins. Less than its main competitors but largely enough to cover all the essential needs.
Thanks to their popularity, Drupal and WordPress have a large base of plug-ins, making it easy to quickly implement additional functionalities.