Content, Templates & Renderings
Template Convention
Templates starting with an underscore are considered what kind of template:
- “Parent” / Base templates
Sitecore allows for what kind of template inheritance
- “Multiple”
What kind of template inheritance is bad?
- Circular
Avoid what kind of field names?
- “Duplicate”
How can you have duplicate field names?
- If they’re in different sections. But use the “Title” field to hold the duplicate names and give the field actually different names.
Why would you limit available commands in the rich text editor?
- Make it easier for content authors.
- Prevent them from making content that doesn’t fit the site
Tokens
What does the $name token do?
- Gets the name of the item
What does the $date token do?
- Gets the current date (only date)
What does the $now token do?
- Gets the current date & time
Content Structure Recommendations
What is the limit on child items?
- “100”
What is the limit on item versions?
- “10”
Sitecore image field rendering
When looking at the following code, what does mw and mh mean?
@Html.Sitecore().Field(“myImageField”, new {mw=120, mh=120})
- Max width
- Max height
What does the code above accomplish?
- Caches the result on the server
- Serves less data
- Overrides author settings
Configuration
What does Sitecore call config groups?
- “Layers”
What do the layers.config file do?
- Defines the processing order
What’s the default order?
- (base)
- Sitecore layer
- Modules
- Custom
- Environmental
What are the two syntaxes for changing values?
- Patch
- Set
Can Sitecore Rocks show the whole config?
- True
What does Vertical Scaling do?
- Use CM & CD environments, both do different things.
Where are server roles defined?
- By an AppSetting in the web.config
What are the ways to go about extending Sitecore?
- Package
- Module
- Update Package
What can Packages contain?
- Code
- Configuration
- Serialized sitecore items, roles, and users
Users are installed disabled and passwords are reset, true or false?
- True
Where are the modules found?
- Modules are packages found on the Sitecore Marketplace
How are update packages defined?
- Update packages have an .update extension
- Installed via updateinstallationwizard.aspx page
What can Sitecore Rocks do to help undo a package installation?
- Sitecore Rocks can make an anti-package
- Has to be made before installing a package
Multisite Environment
Where are site nodes for a multisite environment stored?
- Sitecore.config
- Should use a separate patch file
Does order matter for Sitecore nodes?
- Yes
Are sites added before or after the website node?
- Before
What is included in the configuration?
- Port
- Hostname
- Path url
In Sitecore 9, is it required to inherit from the standard rendering parameter template?
- No
- But you won’t get standard fields if you do
- Previously was required for all Sitecore versions
Are compatible renderings a two-way setting?
- No
Where are rendering parameters stored?
- _rendering field
What is used to generate all links?
- LinkManager
Why do we generate all links the same way?
- So that all items are only indexed once
LinkManager
Var options = LinkManager.GetDefaultUrlOptions();
LinkManager.GetItemUrl(item, options);
- Recommend single url for each page, not multiple URLs.
- Can use canonical if different URLs are required for the same page
How does one produce translated urls?
- By using the item’s display name property in the link manager
What do wildcard items do?
- Allow you to use dynamic URLs
- Match to any request
What is a wildcard item?
- An item that is just an asterisk
How are navigation items typically made?
- By inspecting the content tree
- E.g. menus, dropdowns, parents and getchildren()
What is the recommended way of getting the sub-items in a branch?
- ContentSearch recommended over GetDescendants.
Why does a foreach on a getchildren need Item vs var?
- Var resolves as an object rather than an item
What is recommended as a way of preventing an item showing up in navigation?
- “Exclude from navigation” field
What does it mean when Language Embedding is set to “As Needed”?
- It means that the first request to a site will have the language embedded but after clicking the first link, the language will not show again until it is changed
Experience Editor
What foundation is the experience platform built on?
- Exp management
- xConnect
- Exp database
What makes up Sitecore XP?
- Exp Management
- Marketing from xConnect
- Exp Database
What is the name of the main screen of Sitecore?
- The Launchpad
What does the view tab in the Experience Editor do?
- Turns field highlighting on and off with “controls” checkbox
When are data and presentation?
- Everywhere except for the rich text field
As of Sitecore 8.2 what service is now standalone?
- Publishing
What two services makeup xConnect?
- Collection
- Search
Official Sitecore Documentation
What is the url for the Sitecore developer portal?
- Dev.sitecore.net
What is the url for the Sitecore Documentation Site?
- Doc.sitecore.net
What is the url for the Sitecore Developer Network?
- Sdn.sitecore.net
What is the url for the Sitecore Knowledge Base?
- Kb.sitecore.net
What is Sitecore’s Youtube Channel called?
- Master Sitecore
Where do you find helix information for Sitecore?
- Helix.sitecore.net
Where is Sitecore’s curated blog?
- sitecore.net/learn/blogs/technical-blogs.aspx
What is the two main dll’s for Sitecore?
- Sitecore.Kernal
- Sitecore.MVC
What’s the best way to get the sitecore dlls?
- Nuget feed
It’s recommending referencing dlls from where?
- Separate folder
Can Sitecore Rocks synch folders?
- True
In Sitecore Rocks, what does Mode Mirror do?
- Syncs everything
In Sitecore ROcks, what does Mode Copy do?
- Doesn’t sync deletions
What do you use to get current item?
- Sitecore.Context.Item, OR
- RenderingContext ← this one
Where do you put items that need to be access by a URL?
- Under the home item of the site
Creating Edit Frames
Where do you add buttons to Experience editor?
- Core database
What does the edit frame do?
- Makes part of the page clickable
Where do the edit frames live?
- In Core
- Under WebEdit / Edit Frame Buttons
What character is used to deliminate the field names?
- Pipe
Search and Search Driven Components
What bulk operations can you do from Search in Sitecore?
- Apply presentation
- Add tag
- Publish
- Serialize
What kind of model does Search use?
- Provider model
Name two search engines built into Sitecore?
- Solr
- Azure
What is the advantage of Azure Search?
- High reliability – not really, but that’s the answer
Does sitecore index Data or Html?
- Data
Do all search results have urls or presentation details?
- No
Default index configuration indexes what?
- All items and most fields
- Except those based on a bucket related template
What is Sitecore’s basic unit?
- Item
What does Sitecore index?
- Document
Store vs Index
If StorageType = “yes” is set then what?
- The entire content is stored in the index and can be retrieved from there.
- The index is bigger
- Index just keeps tokenized items
Name three different types of content in Sitecore can store in the same index?
- Sharepoint
- ERP
- Sitecore items
Buckets
What is the max number of children?
- 100
WIll urls change when items are converted into a bucket?
- Yes
Who should make buckets?
- Developers, not authors
What means when a standard value item is a bucket?
- Items created from that template are also buckets
When do you use Synch – under Buckets?
- When the configuration for the bucket or bucketed items has changed
If an item is hidden, in a bucket does it need to be bucketable to be hidden?
- Yes
How do you retain parent-child relationships?
- Click the lock child relationship” checkbox in the standard field
How best do you get bucket items?
- Use ContentSearch api
When does a Linq query run?
- When something like GetResults or ToList is invoked
- Considered lazy loading
How do you do descendent-type searches?
- Use the property “Paths” along with “Contains”
What does GetResult give?
- Total number of search results hits property and facets
Custom QUery result types can be used in place of what?
- SearchREsultItem
Predicate builder lets you do what?
- Make complex searches at runtime (e.g. loops)
Facets have what?
- Extension methods
- Have conults (??? I don’t even remember what this was) of result values
Why should we use icons?
Why use buckets?
Why some items are not hidden inside a bucket?
How do you get items from a bucket that has thousands of items?
Which dll do you need to do a content search to build a menu?
Which dll do you need to get the model.rederingitem?
Where do we save the default values of an item?
Where should we save shared/common content in multi-site implementation?
Where are Sitecore indexes stored?
/data/indexes folder (I think)
What xml node is used in layers.config to set order?