This page is still in development and will continuously be evolving as more people share their Profiles Tips and Tricks. Please take any information you read on this page as opinions based from experienced Profile Developers.
Profiles are very flexible and we encourage you to explore what can be accomplished with them. Be creative and please feel free to contribute back your Tips and Tricks to help others learn from your experiences.
Configuring Profiles
Configuration Layout
When creating Tiki Profiles you will notice that debugging can be difficult. Although you can organize your profile any way your wish; you will notice that as you create more complex profiles debugging will become a pain if your Profile is disorganized. Here is a good order to ensure your profile is maintainable, easy to debug and ensure references get properly set. The idea behind the following flow is creating your profile from low level objects and moving up towards high level user interface configuration.
Objects
Anything that will generate an ID except for Modules (they get assigned later)
- Wiki Pages
- Menus
- Forums
- Blogs
- etc...
Features
Turn on and off what you want activated
Permissions
Groups and Perms (also include Categories attached to any groups)
UI
Create the Modules you want and assign a theme
Preferences
Usually things found in the Admin -> General Section
Configuration Layout - Sample
Objects
Wiki Pages
YAML
objects:
-
type: wiki_page
ref: homepage_wiki_include
data:
name: HomePage
description: HomePage
lang: en
mode: create_or_update
content: wikicontent:HomePage
File Gallery
YAML
objects:
-
type: file_gallery
ref: site_file_gallery
data:
name: site images
description: site images
owner: admin
archives: 0
flags: [ public, visible, lockable ]
column: [ icon, name, created, creator, files ]
Features
Wiki
YAML
preferences:
feature_wiki: y
feature_lastChanges: y
feature_history: y
feature_source: y
feature_listPages: y
feature_wiki_comments: y
wiki_comments_displayed_default: y
feature_warn_on_edit: y
feature_wiki_pictures: y
feature_page_title: y
feature_wikiwords: y
feature_wikiwords_usedash: y
feature_wiki_plurals: y
feature_wiki_ext_icon: y
feature_wiki_userpage: y
feature_wiki_protect_email: y
feature_wiki_1like_redirection: y
wiki_edit_section: y
wiki_list_name: y
wiki_list_hits: y
wiki_list_lastmodif: y
wiki_list_user: y
wiki_list_comment: y
wiki_list_description: y
wiki_list_versions: y
Forums
YAML
preferences:
feature_forums: y
feature_forum_parse: y
feature_forum_replyempty: y
feature_forums_search: y
feature_forum_content_search: y
forum_list_topics: y
forum_list_posts: y
forum_list_lastpost: y
forum_list_visits: y
forum_list_desc: y
forum_thread_defaults_by_forum: y
Permissions
YAML
objects:
-
permissions:
Anonymous:
allow:
deny: [ view ]
Registered:
description:
allow:
- view
- edit
- read_comments
- forum_post
- forum_post_topic
- forum_vote
deny:
- wiki_view_history
- wiki_view_source
Master:
description:
include: Registered
allow:
- wiki_view_history
- wiki_view_source
deny: [ ]
User Interface
Top Menu
YAML
objects:
-
type: menu
ref: main_menu
data:
name: Main Menu
description: links that appear in the top navigation bar
items:
-
name: Home
url: ((HomePage))
groups: [ Anonymous ]
-
name: About Us
url: ((About Us))
groups: [ Anonymous ]
-
name: Contact Us
url: tiki-contact.php
groups: [ Anonymous ]
Upgrading Profiles
When running the same profile twice either to test new options or actually to try and upgrade. You will notice that certain objects will be created twice. If duplication of objects is causing your profile upgrade to break menu links or make your site behave strange it is then a good idea to divide your profile into sub profiles each with their own specific task.
A good example of how to separate your profile into sub profiles is to create one Profile for:
- Objects
- Features & Permissions
- User Interface (Modules, Menu's, Theme)
Please Note that the downfall of this method means that you will not be able to use Profile References when referring to objects. Please review the Pros and Cons section before making a decision on how to manage your profile. You can also refer to the HOW TO section to see examples of assigning an object with a
Reference and Without a
Reference
Sub Profile - Pros
- Objects do not get duplicated when upgrading parts of profile
- Profile is easier to manage especially when multiple people are working on it
- You can use sub profiles as building blocks for other use cases (use Objects and Features combined with different UI Profile to create different applications)
Sub Profile - Cons
- You cannot use Profile References
- You need to run all of your Sub Profiles to complete your installation