Discussions
Categories
Groups
Community Home
Categories
INTERNAL ENABLEMENT
POPULAR
THRUST SERVICES & TOOLS
CLOUD EDITIONS
Quick Links
MY LINKS
HELPFUL TIPS
Back to website
Home
Web CMS (TeamSite)
Dynamic SiteMap and site menu
Terence
Dear all,
I’m using TeamSite 6.5 to manage a website. I had classify the WebPages into different category and created a navigation menu and sub-menu for user to access the content which they want easily.
For example, I have 5 categories in navigation menu and each category contains no. of items act as a sub-menu.
Now I would like to ask is there any method that can help me to make a dynamic sitemap and navigation menu so that when I add a new category, the navigation menu and sitemap can update the content automatically.
Thank you for your help.
Find more posts tagged with
Comments
Migrateduser
I had to do this way back in TS 4.5, so I can't say that this is the most efficient way to do this today... what I had was a database tied to the navigation components so that when you create, modify, or delete a DCR which affects the navigation structure, the database is hit and all
related
(more below)
nav components would be recompiled via iwregenning the template responsible for composing the nav component. In this case, the components were actually include files and the site was in ASP.
By related nav components, I'm referring to only those items which are navigation siblings to the affected record, descendants and/or siblings' descendants, and its parent.
If my horrible description doesn't discourage you, let me know if you have further questions about this method.
Dave
Environments:
(1,2) TS6.5, TS6.5SP1 on W2K3
(3) Vignette V7 Portal on Solaris 9
ISCBorisB
You can use "iwat..." triggers to do that. What trigger(s) to use depends on your requirements.
I did similar thing before by using iwatsubmit. It's basically 2 scripts:
1. Service to catch submission, parse submit events and decide by affected assets if
rebuild is required. If it is, call navigation rebuild asynch.
2. Navigation rebuilding script called by Service.
In theory, you can rebuild navigation right in trigger, it's a bad idea though.
Event processing better be fast besides separate script will allow you to (re)build nav ad hoc.
You did not indicate your platform, obviously setting something as service differs in Win and Unix.
screenshot1.jpg
Tbag
Don't forget about Templating. . . you can have a TPL that doesn't need to act on a DCR at all. . . just have an iwperl section that does an "ls" (or "find") on your content and generates your navigational items.
Migrateduser
What mechanism calls the TPL to generate/regenerate, though? If it's contained within the DCR's primary PT, then what happens when a related nav item is renamed, moved, or deleted?
Environments:
(1,2) TS6.5, TS6.5SP1 on W2K3
(3) Vignette V7 Portal on Solaris 9
Terence
Firstly, Thank's all for your help.
But I would like to ask does iwatxxxx is the api of TeamSite?
And can you describe clearly about the workflow of how to trigger the function to work?
If possible, can you provide some material for me to reference so that I can get a clear picture on what I should do in order to achieve the gold.
Thank you very much.
P.S: I'm running Win server 2003 Enterprise Edition
Adam Stoller
You can read the CLT manuals for information about iwat and/or the iwatxxx utilities (I recommend just using iwat - it's generally simpler to set up and maintain)
The trigger is run automatically based on events - not programmatically via a workflow. You could concievably have the trigger script kick off a workflow - but you might end up kicking off more workflows than desired/needed unless you code your trigger script to take that into account.
First - figure out how you determine when a new category is created.
Second - figure out what needs to be done, in what order, once a new category is created.
Third - figure out how to implement what needs to be done.
It's not clear to me that you've completed the first step. The iwat utility falls largely in the domain of the third step - and while it is definitely helpful to know how to use the tools available to you (RTFM, etc.) - you still need to complete the first two steps before plunging head-first into the third step.
--fish
Senior Consultant, Quotient Inc.
http://www.quotient-inc.com
Terence
Thank you very much.
The information is very helpful.
Tim__D
One appraoch I've used is to store all the navigation elements in a dcr data type separate from the page content. When someone publishes content they choose the context of the navigation for the page they are publishing within the xml structure using a callout. Then component tpls are used to render the navigation on all templated pages during regeneration. We use a regen script to regenerate the pages when updates occur. If the pages do not display the navigation differently on each page you could use just regen an include file which is then included on the other pages thus not requiring regen and realtime updates to the pages in the WA. Hope this helps.