ocPortal Tutorial: Drinking from the feature pool
Written by Chris Graham, ocProductsThis tutorial will describe the thought processes required to successfully design a complex and personalised website using ocPortal.
Table of contents
The processThe ordinary process of creating a bespoke advanced website (rather than just a basic site of pages) goes along lines as follows:
- brainstorm, interview and analyse, to determine what requirements there are for the website ('requirements capture')
- design these features such that a coherent design of the website is constructed ('requirements analysis' / 'design')
- implement the design ('implementation')
- add content
Creating an ocPortal-based website is similar, but during the design phase it is very important to take into account that the system should be designed to make use of the features ocPortal already provides. This presents a huge economic reward, but also requires a special mode of thinking. During the phase, instead of thinking:
you (or a designer working on your behalf) needs to be thinking:'how can I coherently structure this, and what set of features will I end up needing for it?'
This may seem an obvious approach but to do it you need to open your mind, setting aside preconceptions that you may have developed about things, so that you can start thinking about them in ocPortal terms instead. Often you will need to adapt your initial ideas so that they map better to what ocPortal can provide – not for the worse, but just to make your implementation easier. If you would rather avoid this, or find that the closest matching ocPortal features need adapting, you may want to contact ocProducts.'what ocPortal feature best fits each of my needs?'
An exampleI can personally attest to the confused image that comes from a client who is not implementing a system themselves, and the need for clarification (and the client cannot be blamed for this – they are not a trained systems analyst!). In this sense, implementing a solution in ocPortal is no different to any other – it will need to be refined before it can be implemented. Here is a made-up example, of written up notes of a clients requirement for one aspect of their website…
Client said'There should be a set of pages where from each you can download one of our products. The user should get a choice between the version packaged for engineers, and the version packaged for managers. Files should be available in both zipped-pdf and pdf format.'
On face value, this looks like it would not fit into ocPortal in a clean way (i.e. Without just putting a load of attachments on to a page and manually maintaining it), without implementing a new custom module. However, with some careful thought, this could be re-shaped to fit perfectly with features ocPortal provides…
ocPortal-solution analyst saidA download category tree should be provided as follows…
It might not be exactly what was asked for, but it meets requirements and the client would likely be pleased to find that for 'no extra cost' their products may have images shown on the download page, and outmoding: things that they might never have considered, but now love. If this example was a bit more complex, and the download system was lacking, then improving the download system would be substantially cheaper than writing a whole new module from-scratch.
Performing common tasks in ocPortal
Placing articlesThere are two ways to make an article:
- Add it as a news article, and allow users to access it via the news system (or provide a link to it yourself, on your menus for example)
- Add it as a new page
News articles are best used if you do not consider your article to be a long-term part of your website itself, but merely a long-term resource which is archived. You are in the driving seat, however, and you can add as many new pages as you wish, without having to have each linked to from your menu if you do not wish them to be.
You can create a new page and add it to your menus really easily by heading along to the 'Structure' section of the Admin Zone, and choosing the 'Add-New-Page Wizard'.
To add as a news article, head along to 'Content Management' and you'll find an icon for it. Once added, it will appear in any news blocks you have (there is one on your front page, by default) and in the news archive. As mentioned, there is nothing stopping you adding a link to anything within ocPortal to your menus – you can just visit the resource, grab the URL that your browser displays for it, and edit one of your menus with the caption of your choice.
Making databasesThere are a number of different features in ocPortal which can be used for database storage, manipulation and retrieval:
- 'catalogues' allow you to define the fields for records, and then have these records and the manipulation and display thereof to be included as a first-class aspect of your website. Catalogues support hierarchical structuring of data.
- Wiki+ is a wiki-like hierarchical database; it is much more powerful than a wiki however, as whilst it can behave as a free-form and open-access database navigated by embedded hyperlinks, it can also behave as a highly moderated and formal structured database.
- The forum can actually be used very effectively as a database, if a formal structure and presentation is less important than an ability to rapidly manipulate free-form data in a comfortable and informal environment.
- Comcode pages (static documents) may also be used, with each 'record' being created by creating a new page; consistant structure may be created using 'Custom Comcode tags'.
- By integrating an existing system.
If you would like to create a formal catalogue, head over to 'Content Management' and you will see an icon for it.
If you'd like to add to Wiki+, you can choose it from your menus of your main website and begin to edit the tree structure to create new pages, and then edit them and post within them, as required. You should read the Wiki+ tutorial for more information.
If you desire integration of an existing system into your website, you should contact ocProducts.
Adding imagesThere are four distinct ways for adding images in ocPortal:
- Images that are a part of the visual design of the website are 'theme images'. Extensive information on themeing is provided in a number of ocPortal tutorials.
- Images that are presented as a part of some other type of content, such as a press release (a news article), or a forum post, are done using attachments. A user-friendly interface for choosing attachments is provided on the actual add screens for these types of content.
- Images that are presented in galleries.
- Images that are uploaded manually and referenced in Comcode using the 'img' tag
If you are wishing to add an image to a gallery, head over to 'Content Management' and there is an icon for 'Galleries'. The gallery system supports a tree structure of galleries, or you may simply add things to the root of the tree making them show right-away when the user visits the 'Galleries' link (which is on one of your website menus by default).
Adding filesThere are two distinct ways of making downloadable files (as opposed to online articles) available to users in ocPortal:
- You may add the file as an attachment to some other content, such as a press release (news article). This is performed on the 'add' screen for any content that supports them.
- By adding it to the download system.
To add to the download system, head over to 'Content Management' and there is an icon for 'Downloads'. The download system supports a tree structure of download categories, or you may simply add things to the root of the tree, making them show right-away when the user visits the 'Downloads' link (which is on one of your website menus by default).