Restrict Datasource Templates - sitecore

I'm trying to restrict the items shown in my multi-list. I've looked at articles like this: http://zacharykniebel.com/blog/sitecore/2014/june/26/constraining-the-sitecore-7-multilist-and-treelist-fields-with-and-without-search
I've tried implementing
DataSource=/sitecore/content/data/country sites&ExcludeTemplatesForDisplay=Country Site
But I'm still seeing both template types in my Multi-List.
Any suggestions of what else to try, I'm using Sitecore 8.2

Those parameters only work for Treelist fields not multilist fields. Change it to a Treelist or TreelistEx and it should work.

Related

Sitecore - Multilist with Search field

I am on Sitecore v8.2
Using Multilist with Search field, is there a way to filter by multiple templates?
TemplateFilter seems to work with just one Template ID (tried pipe delimited value and that didn't work). I would rather not use Filter=_templatename and Filter=_templateid doesn't work.
That's a bit tricky with Sitecore.
As you wrote, TemplateFilter only works with 1 value and it doesn't care about pipe separated template ids.
But you can achieve what you need with Filter parameter. The syntax is:
Filter=_template:{A87A00B1-E6DB-45AB-8B54-636FEC3B5523}|_template:{DA1684ED-C7A7-4B96-B019-C1E3D5169A6A}

sitecore 7 multi datasource field

I have a treelist field that I want to set the datasource to 3 folders p.e.:
/sitecore/Website/News/
/sitecore/Website/Events/
/sitecore/Website/Articles/
Under the website item there are more "folders".
I've searched and spent few hours trying different approaches but none seemed to work.
Is this possible? Do I need to extend the field?
Thank you in advance
A while back I wrote a blog post about the different ways you can control the Datasource of your multilist and treelist fields (with and without search). The third technique listed for fields with search is what I think you are looking for:
Search in two or more places of the content tree (Fields with Search):
StartSearchLocation={110D559F-DEA5-42EA-9C1C-8A5DF7E70EF9}&Filter=_path:110d559fdea542ea9c1c8a5df7e70ef9|_path:3d6658d8a0bf4e75b3e2d050fabcf4e1
For your implementation:
StartSearchLocation={Website.ID}&Filter=_path:[News.ID (guid form; no brackets)]|_path:[Events.ID (guid form; no brackets)]|_path:[Articles.ID (guid form; no brackets)]
Search in two or more places of the content tree (Fields without Search):
If you are using a Multilist field (without search) then I would do the following:
DataSource=/path/to/source/1|/path/to/source/2
For your implementation:
DataSource=/sitecore/website/news|/sitecore/website/events|/sitecore/website/articles
I would also add that the Treelist with Search field has been deprecated in later versions of Sitecore 7, so if that is the field that you are using then I advise changing to the Multilist with Search field. If you are using a standard Treelist field, then Ahmed's answer may be viable as well, depending on your use case.
Let me know if you have any questions. Good luck, and happy coding! :)
You can use IncludeTemplatesForDisplay parameter to filter the items based on templates:
DataSource=/Sitecore/Content/Home&IncludeTemplatesForDisplay=News Folder,News,Event Folder,Event
IncludeTemplatesForDisplay parameter accepts comma separated templates names, you might need to include parent folder templates names too so that it appear in treelist.
Hope this helps

Sitecore Conditional Showing of Fields

So I am rather new to sitecore, and it's a topic that wasn't covered during my training. My questions is just to help point me to the correct term, or documentation on a method to do the following.
I have a definition item, with a ton of field groups, what I want to do is something like:
if Value of Field X is "yes" then collapse/hide Field X or Field Group X.
Does that make sense? Is it a validation rule? or some other kind of rules, is it a workflow I need to attach? Do you place it on just the field I want to hide, or the field that triggers the action?
I appreciate any guidance.
There is nothing out-of-the-box in Sitecore to achieve what you want but there is no reason you cannot create a composite custom field type to do this. The following articles will help you achieve this:
Creating a custom Sitecore Field
Getting to Know Sitecore: Custom Fields, Part 1
Create a new control, inheriting either from Droplist (if the comparison of the value is to be text based) or Droplink (for comparison of ID). You could add a parameter in the Source field of the control to specify what the values that trigger the hide should be.
The underlying control in the Content Editor is just a standard HTML select element. Add onchange events to the control and add your Javascript handler to hide the other controls. Since I could not find a way of adding additional custom css classes to the Sitecore controls, it would be best/easiest to hide all other controls in the same collapsible group after you control. This would mean you would need to group your controls better (or logically at least).
The Javascript will be something like this (the Content Editor uses the Prototype JS framework):
if ($(this).getValue() == 'no') {
// find the parent container of this control and then hide all the next siblings in the same group
$(this).up('.scEditorFieldMarker').nextSiblings('.scEditorFieldMarker').invoke('hide');
}
You can test this by running the above in the console, change out the keyword this with the id of your field, e.g. $('FIELD2292054').
What I am not sure about is how to trigger the hide on initial load, i.e. when someone returns to an existing item, it may be possible by adding to one of the pipelines, but would be better using a JS solution if possible. I'll have a think about this and get a proper code sample up over the next few days.
EDIT: You can add an event handler to sc:contenteditorupdated to handle the content editor being rel-oaded.
document.observe("sc:contenteditorupdated", myFunction);
I wrote up a blog post and put the code on GitHub if you are interested.
Not sure if you have come across Andy Uzick's this blog post.
He wisely talks about hiding fields in the Content Editor and has also created a Sitecore Module called Hide Field Template Extension which is hosted on the Sitecore Marketplace with the full source code to extend.
After reading through and trying the extension, I do feel that it will not completely resolve your issue (how you have described it in the question).
But it will give you:
A mid-term solution to hide a few unnecessary field that some content editors would not like to view.
Fields that are only required by administrators for admin purpose - to de-clutter these fields could be hidden.
Just one thing to bear in mind that it mentions in the requirements Sitecore 6.5 & 6.6. I have not tested it in Sitecore 7. If you are using Sitecore 7, which I think you are, one could modify the source code and make it work for Sitecore 7.
Have a look and share your findings.
Happy Sitecoring!

Joomla Category Home Pages

Is there any way in Joomla2.5 to create Home/Landing Pages (ie. "default") pages for each category.
For example, I would like the user to be able to go to www.somejoomlasite.com/category1 and see a default home page for category1, and a different home page for category2 and so on. Is there any way to achieve this? Could I create an article under each category and set it's alias as index? or will I get an error about having duplicate aliases (even though they are under different categories)?
Any help is greatly appreciated. Please let me know if I need to provide further info.
An alias has to be unique within a category. So you should be fine using the same alias in different categories.
You should be able to achieve a structure like you described with menu items for each category. And of course SEF needs to be turned on with rewrite enabled.
The menu items don't need to be visible on the page, you can also create a "hidden" menu. Just don't show the accompagning menu module.
These menu items can be anything: a category list of the articles, an article itself, a featured list of articles in a category or whatever you like.

Joomla 2.5! How can i customize own template for category layout?

I am designing a template. With Beez_2 template, articles are able to display under blog layout, but with my own template, they are only able to able to display under list layout. How can i customize own template to display articles in a category under blog/list layout?.. Thank. I am using joomla 2.5!
Check your templates' /templates/some_template/html/com_content/category folder: there should be at least two files, "default.php" and "blog.php", if you only have default, the blog view may not be available.
For testing, just rename "category" to something else and you should see the default blog available again.