Handling internal links in Sitecore 6.4 cloned sites
Asked Answered
S

1

1

We are attempting to establish a Sitecore 6.4 architecture whereby we clone several sites from a "repository" site.

We have addressed many issues regarding data structure, but are left with one key problem:

How do we handle internal links within a cloned site?

The idea of cloning was to allow local modification of small parts of data, but central editing of the main body of content. Editing directly in a cloned item breaks inheritance from its parent, at least in the field that is edited.

But: Sitecore internal links are stored as a GUID. When cloning an entire site, all links in it will refer back to the parent site. This is particularly problematic when the links are in a rich text field, storing the main body of content of an item. Replacing the link with a link pointing to the relevant item within the cloned structure will break the inheritance on this field.

Has anyone developed a workaround, until Sitecore provide a more sophisticated solution? It would seem that it would require significant extension of the LinkManager and possibly some regrettably solid rules for linking.

Ideas, solutions, thoughts welcome.

Edit: Cross posted to SDN Forum, not a great deal of help there.

Soliloquy answered 18/3, 2011 at 13:52 Comment(2)
If I understand correctly: you are creating a 'repository' site with content items that have internal links (Main) referencing other content items (Linked). You then clone that site and want the internal links in the newly created content item (Main clone) to be updated to reference the newly created content items (Linked clone)?Accessible
The idea is to create a single site that can be cloned to provide local versions. But a link in the repository site from e.g. the home item to the products item will still point to repository/products in the cloned site. If the link is in e.g. a rich text field then rewriting the link will break inheritance for that field, losing the benefit of having a central data repository for many sites.Soliloquy
B
0

Am I right in saying you want the cloned site to be self-contained once cloned?

So in the repository you have /respository/home with a link to /respository/home/product

Once cloned you want this to become /cloned/home with a link to /cloned/home/product (and not /respository/home/product )

The following quote is throwing my understanding of the problem, as it appears to contradict this - "If the link is in e.g. a rich text field then rewriting the link will break inheritance for that field, losing the benefit of having a central data repository for many sites."

Confused!

Bifacial answered 26/3, 2011 at 23:55 Comment(1)
The idea is to be able to push updates from the repository site to cloned sites. So yes, the linking should behave as above, but we still want the benefits of the clone inheriting from its parent. This would allow us to e.g. overwrite the price field of a product in each clone (dollars, euro, sterling etc) while the main content of the clone is inherited. Inheritance can be broken at field level. But we don't want to break inheritance for fields merely because they contain a link. Is that clearer?Soliloquy

© 2022 - 2024 — McMap. All rights reserved.