Welcome Guest! To enable all features please Login or Register.

Notification

Icon
Error

Solution for Site inheritance, Content-sharing and Searching
grifone
#1 Posted : Wednesday, May 05, 2010 6:54:49 PM(UTC)
Rank: Advanced Member
Groups: Registered

Joined: 4/22/2010(UTC)
Posts: 31
Location: England
I am working on a solution which contains two sites. SiteA and SiteB. In Kooboo terms, SiteB inherits from SiteA using "Website Inheritance".

However, there are two requirements

1) Content in SiteA is common to SiteB. However, in some cases, content is specific to SiteB only, in which case, it should be possible when entering content into Content Folders in SiteA, to "tag" the content so that it is exlusively displayed on SiteB only.
For example, all News content in both SiteA and SiteB is taken from the News Content Folder in Site A. However, it should be possible to add a 'tag' category item (for example) so that it is tagged for display on SiteB only.


2) The Search Module is implemented in SiteA. Search Results in SiteA should return results from Content Folders "News" and "Research", which contains content for both sites. However, search results in SiteB can only return content from "News" and "Research" which have been 'tagged' for SiteB, as per (1) above.


Is it possible to address these two requirements for SiteA and the inherited SiteB, using Kooboo?
vincent
#2 Posted : Wednesday, May 05, 2010 8:42:33 PM(UTC)
Rank: Advanced Member
Groups: Registered

Joined: 4/29/2010(UTC)
Posts: 62
Location: xiamen
Grifone,

It is possible but difficult to do what you described above.

Is it possible that we used a work around here? When there are contents that you want to display them on siteB only, can you input them into the application of "SiteB"? However in this implementation, the search result of SiteA will only contain the news for SiteA without the news from SiteB, which I think should be reasonable as well?

grifone
#3 Posted : Wednesday, May 05, 2010 9:06:12 PM(UTC)
Rank: Advanced Member
Groups: Registered

Joined: 4/22/2010(UTC)
Posts: 31
Location: England
Vincent

I think the workaround of entering content to be displayed on SiteB into Content Folders in SiteB Application is acceptable.

However, as you say, that would mean that the search results on SiteA would not show that content on SiteB. That doesn't solve the problem.

I have noticed that "Website Inheritance" on Kooboo follows a "General to Specific" pattern. So, if SiteB inherits from SiteA,
then I can go to SiteB > SiteManager > SearchSettings.
And when I try to enter a SearchSetting, I can see all SiteA Content Folders (General) as well as SiteB content folders (Specific).

This is confirmed by the Kooboo document:
http://www.kooboo.com/do...ngual_websites_solution

Which says:
Quote:
In order to ensure that private Intranet content is NOT available on the public Internet site, an Intranet site is defined as being a sub site to the public Internet site. You can see that the DE Intranet site is listed as a sub site of the DE Internet site.


This suggests that Kooboo can do what I am trying to do, but I think have implemented the inheritance incorrectly.

Instead of SiteB -> Inherits from SiteA
I need to have SiteA _> Inherits from SiteB.

That, I think, would take care of the content inheritance.

But would that work for Search Results requirement?
vincent
#4 Posted : Wednesday, May 05, 2010 9:42:41 PM(UTC)
Rank: Advanced Member
Groups: Registered

Joined: 4/29/2010(UTC)
Posts: 62
Location: xiamen
Grifone,

I think you are correct about this implementation. In case SiteA Inherits from SiteB, SiteA can choose to display content from SiteB or not.

However when SiteA choose not to include some items from SiteB, this information will also be stored in the lucene search Index, which means that you might not be able to search content on SiteB from SiteA. This seems like did not solve your problem. In addition, when SiteA does not include ContentX from SiteB, even the search result contains ContentX, there will be no detail page available for ContentX on SiteA, unless you redirect users to SiteB.

So I am thinking the solution might be that
- SiteA inherit from SiteB
- SiteA includes all content items from SiteB
- In the content list page of SiteA, you use condition in the datarule to filter out content from SiteB.
- Now you can configure the Lucene search setting to search all contents from both SiteA and SiteB from SiteA.

Does this sounds reasonable?
grifone
#5 Posted : Wednesday, May 05, 2010 10:10:25 PM(UTC)
Rank: Advanced Member
Groups: Registered

Joined: 4/22/2010(UTC)
Posts: 31
Location: England
Vincent

I think I know what you mean. I am following and agreeing with everything you say, until you say:

Quote:
- In the content list page of SiteA, you use condition in the datarule to filter out content from SiteB.
- Now you can configure the Lucene search setting to search all contents from both SiteA and SiteB from SiteA.


1) Can you give an example of how you would filter out content from SiteB in a DataRule in a List page on SiteA?


Finally, is it possible to "de-inherit" SiteB from SiteA, and then "inherit" SiteA from SiteB after creation in KooBoo Admin?

Thanks!
vincent
#6 Posted : Wednesday, May 05, 2010 11:01:03 PM(UTC)
Rank: Advanced Member
Groups: Registered

Joined: 4/29/2010(UTC)
Posts: 62
Location: xiamen
I just tried it out and it seems like working correctly.

The Kooboo Data Rule has a column called "value condition", you can use this condition to filter out data. You have a lot of columns to use in the value condition, you may want to the database table schema to know all of them.

In your case, you can do it this way.

- Find out the ApplicationId of SiteA, you can see this under "SiteManager" --> "site setting", supposed that the value is: ac3ceae2-9f62-40a2-9e04-2f0880ecea57
- In the List page of SiteA, in the Data Rule, put this value into the value condition: ApplicationId='ac3ceae2-9f62-40a2-9e04-2f0880ecea57'

This way, you always make sure that in this special List Page of SiteA will only contains content from SiteA. Content Inherits from SiteB will not appear in the list page. This is not the designed way of filter out data but should works in your case. The designed filter in content inheritance is the "inclusion" feature in the CMS content list page to choose whether to include items from parent application or not. But that might have effect on the lucene search index (I have not really tested it).

It is not possible to de-inherit or re-inherit after an application is created. You have to design the relation up front. I do not see it as necessary to have this de-inherit or re-inherit feature.
grifone
#7 Posted : Wednesday, May 05, 2010 11:24:08 PM(UTC)
Rank: Advanced Member
Groups: Registered

Joined: 4/22/2010(UTC)
Posts: 31
Location: England
Vincent,

Does this also mean that Lucene Search on SiteA can be configured to search content on both SiteA and SiteB using Search Settings?

When using ApplicationId in the Value Condition of the DataRule, will there be any problem when the site needs to be packaged and exported from a Dev environment to a Production environment. I mean, is it possible to enforce the same ApplicationId value in the new environment?
vincent
#8 Posted : Thursday, May 06, 2010 12:00:30 AM(UTC)
Rank: Advanced Member
Groups: Registered

Joined: 4/29/2010(UTC)
Posts: 62
Location: xiamen
Yes, Kooboo only has one Lucene index content file, each content has a field to indicate which application they belongs to or can be accessed from. If siteA --> inherit from SiteB, SiteA can access to those content from SiteB that SiteA choose to include.

Yes, when export and import again, you can keep the same ApplicationId and other IDs. During import, you have option to renew id or not.
grifone
#9 Posted : Thursday, May 06, 2010 1:19:35 AM(UTC)
Rank: Advanced Member
Groups: Registered

Joined: 4/22/2010(UTC)
Posts: 31
Location: England
Hi Vincent,

Thanks, this has been very useful
Users browsing this topic
Guest
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.

Powered by YAF 1.9.5.5 | YAF © 2003-2011, Yet Another Forum.NET
This page was generated in 0.157 seconds.