Questions Flashcards
Name two key components that make up Sitecore XP
Experience CMS, and marketing platform
Name some of the sites that you can refer to for more information and module downloads
- SDN
- Knowledge Base
- Marketplace
- Sitecore XP 8
- Sitecore XP 8 Documents
What should you do before contacting support?
Refer to Help Desk best practices
What are your responsibilities as a developer?
Build according to recommended practices
Name three Sitecore interfaces
Desktop, Content Editor, Experience Editor
Everything in Sitecore is an…
Item
An item is not a…
File
An item’s URL is determined by…
Its position in the Content tree
Name the process by which items are synchronized between the master and web database
Publishing
Which Experience Editor mode would you use to add a new component
Designing mode
Which Experience Editor mode would you use to add an image or edit text?
Editing mode
When a request comes in, Sitecore…
Maps URL to an item in the content tree and dynamically assembles presentation
Name the three databases that are installed by default
master, web, and core
Name some foundation features that Sitecore provides out of the box
Content versioning, multi-language support, devices (adaptive design) support
What is the name of the digital marketing management part of the Experience Platform that collects and aggregates contact information?
xDB (or Experience Database)
An item’s type is determined by the ______ used to create it.
Data template
What is an item composed of?
Field sections and fields
What do you need to specify when creating a new field?
Field name and type
In the Content Editor, where can you find out which data template an item is based on?
Quick Infosection on that item
Some examples of field types are…
- Single-Line Text
- Rich Text
- Image
- Date
In which scenario would you use data template inheritance?
When fields are repeated in multiple data templates
Why is it important to think of your data template creation and inheritance structure from the beginning?
Refactoring template inheritance may cause data loss
By default, all data templates eventually inherit from which Sitecore data template?
Standard Template
What happens if the same field section name is used in multiple templates in a data template’s inheritance tree?
- The field sections will merge
- Fields will be listed under this single section
What happens if the same field name is used in two separate inherited data templates?
- Fields do not merge
- Both fields will appear
- Best to avoid reusing the same field names
Describe the standard values item
- Always named__StandardValues
- Child item of owning data templates
- Is a special instance of an item
- contains all inherited fields
What type of settings can be applied to standard values?
- Default field values
- default insert Options
- default presentation
- default Workflow
What are the two types of default field values?
Dynamic (uses tokens) and Static.
How do tokens work?
Tokens are replaced when an item is created. For example, there are tokens for the name of the item or the ID of the parent item.
Name three tokens:
Any three of the following:, $name, $date, $id, $parentid, $parentname, $time, $now, $date
What are the Insert Options?
A list of item types (data templates) that can be created under a specific item.
Where Insert Options should be configured?
On the data template’s standard values which can be overridden at item level.
Why is it a good idea to configure Insert Options on standard values?
All items using that data template will have the same Insert Options.
What arepresentation details?
Configuration that determines what an item looks like when requested by the browser.
Describe how Sitecore resolves a page in comparison to a static HTML site.
Normally, a URL points to an HTML file. In Sitecore, a request maps to an item and the page is dynamically assembled from smaller pieces.
What is the name of the main Sitecore .dll?
Sitecore.Kernel.dll
What happens if you do not setCopy LocaltoFalsefor you Sitecore.Kernel reference?
Some dll’s in bin folder will be deleted and you will need to get the full set from another installation to continue working.
In a Sitecore context, what is the name given to an .aspx file?
A Layout
How is a Layout definition item connected to a Layout file?
The Path field on the Layout definition item points to the location of the .aspx file.
How do you configure an item’s presentation details in Sitecore Rocks?
Right-click->Tasks->Design Layout or CTRL+U. You can also use Command
How many Layouts can you assign to a single item?
One - Per Device
Name three different types of Sitecore components
Sub layout, XSLT rendering, web control
What type of file is a Sitecore Sub layout?
.ascx
A component consists of a file on the file system and…
A definition item in Sitecore
How does a component definition item where to find the associated file?
By aPathfield on the definition item
What are the benefits of dynamic binding?
- New page types can be assembled from existing components
- Changes to page structuredo not requirea developer
- Supportscontent re-use(more in Module 5)
- Supports Site core’spersonalizationandtestingfeatures
What is the Sitecore control that allows you to dynamically bind components to a page?
sc:Placeholder
What is the Sitecore control to statically include Sub layouts on a page?
sc:Sublayout
Describe the process by which a component is bound to a placeholder?
Open presentation details -> Add Rendering -> select rendering -> Edit Placeholder Key property
Name the property that you must set on a placeholder to identify it.
Key
If all items of a particular type require a particular component, where should these presentation details be configured?
On the standard values of the data template
What type of components might be good candidates for static binding?
Page scaffolding, like headers and footers
How can Sitecore help you resize images dynamically?
Set MaxWidth and/or MaxHeight onthe sc:Image tag
Name the one mandatory property that must be specified on the Sitecore web controls
Field (note: on , the equivalent isFieldName)
Sitecore Namespaces
- Sitecore.Data– CRUD operations, item manipulation
- Sitecore.Context– Information about current request
- Sitecore.Links– Links management
Useful in-built utilities
- Sitecore.DateUtil
- Sitecore.IO.FileUtil
- Sitecore.StringUtil
- Sitecore.UIUtil
- Sitecore.MainUtil”
In which .dll can you find the majority of the API?
Sitecore.Kernel
When Sitecore makes a request, what is the name of the static class that is assembled?
Sitecore.Context
Name four properties that you might get from Sitecore.Context:
Context user, language, database and item.
When you are looking at a page in Experience Editor mode, what is the context database?
Master
Name the method used to retrieve items?
GetItem()
Items can be retrieved by path or…
By ID
What does the Sitecore.Context.Item.Database property return in the context of a live website visitor?
Web
How should you compare two items in code?
Using their IDs
What method do you use to retrieve an item’s URL?
LinkManager.GetItemUrl()
Why should you not useGetDynamicUrl() for your site’s front end?
Unreadable ‘developer’ URL, uses IDs
What object can you pass into the GetItemUrl() method to customize the way your item’s URL is rendered?
A UrlOptions object
Where can you customize how URLs are rendered globally?
In theLinkManagersection of the web.config
Sitecore security is an extension of…
Standard .NET membership
All code is executed in the context of…
The current user
What affects whether or not a piece of code will run?
That user’s permissions
What permissions does extranet\anonymous lack by default?
Permission to create or edit items
When creating or editing an item, the code must be executed with the appropriate security rights. Name two ways that this can be done.
UserSwitcher or SecurityDisabler
How do you put an item into an editing state?
Creating an EditContext
Why should you create / edit items in the master rather than the web database?
Web overwritten by publish.
Why is it a bad idea to output a field’s value straight to the screen?
Not editable in Experience Editor and complex fields contain custom XML
Which field types are suitable for editing using the .Value property?
Simple text fields. For example, Single-Line Text
Why should you use FieldRenderer.Render()?
- Transforms field content into valid HTML – Sitecore controls ultimately go through this method
- Automatically makes fields editable in Experience Editor
- Allows you to pass in parameters that match the ones available in Sitecore controls –for example: image max width
- Translates dynamic links in Rich Text Editor fields into SEO-friendly URLs”
Why is it a bad idea to output raw values to the screen?
- Not editable in Experience Editor
- complex field types will not make sense – images, for example
Name the best suited field object for the following field types: single-line text, tree list, drop link, general link:
Field, MultilistField, ReferenceField, LinkField
What method should you use to render the contents of text, date, Image and link fields to the screen (and why)?
FieldRenderer.Render() – Experience Editor support, transforms custom XML, transforms Rich Text links
Why are you unable to render a multilist field to the page using .Render ()?
It contains IDs, not readable content
Setting a component Datasource allows that component to _____.
Output content from a content item elsewhere in the tree
How can you force a Sitecore control to output the content of an item’s Datasource?
Set DataSource or Item property
What do parameters allow you to do?
Allow properties to be set per instance of a component
How are parameters encoded when sent to your component?
As a URL query string, that is:key1=value1&key2=value2
What utility converts parameter lists to a NameValueCollection?
WebUtil.ParseUrlParameters()
Why would you set the Data source for a component on the presentation details of an item?
When that Datasource should only be used on a particular page
Why would you set the component and the Datasource on the standard values’ presentation details?
When you want all items based on a particular template to have that component with that particular Datasource as default
Why would you set the component on the standard values and override the Datasource on the item?
When your component has to appear on every page but has a different Datasource for a particular page
When does a layout delta get created?
When presentation coming from the standard values of an item’s templates overridden on that item.
How does the XML of a layout delta differ from the XML specified on a template’s standard values?
Layout deltas only contain differences between an item’s standard value presentation and any changes made by the author on the item.
-> The standard value XML contains all presentation details.
What can you do with methods that could be used across multiple Sitecore projects?
Abstract code to a generic utilities project
Why can’t you preview items under Global?
They do not have presentation details
Why is the Settings item outside any individual site folder structure?
Values shared across all sites
What kind of content can you display using a General Widget?
Promotions, announcements – anything that could be re-used across the site
Name 2 devices you may want to target with different presentation details:
Tablets and mobiles
When will Sitecore use the language attribute of the site definition in the web.config?
If there is no explicit language in the URL nor a language cookie.
How do visitors to your site change the site’s language?
You have to build language switching for the front-end yourself – using a query string, for example
What kind of error checking should you do when rendering items to the screen?
Check that each item has a version in the context language
What are some important considerations with a multi-site implementation?
Large codebase, sites affect each other’s performance - see Multi-site slide for more
Which shared field is used to store presentation information for all versions of an item?
__Renderings field
What does the presence of the __Final Renderings field allows an author to do?
To define individual presentation details for each version of an item
Which item versions can have individual presentations defined on them
Numbered and language versions of an item
How do you access the Layout Details window for each item?
In Content Editor or Experience Editor click the Details command. In Sitecore Rocks choose Tasks ->Design Layout
What is the difference between the Shared Layout tabs versus the Final Layout tab of the Layout Details window?
The Shared Layout tab is for defining presentation details for all versions of an item while the Final Layout tab focuses on the presentation detail of that specific version of the item.
What will .return?
The context item.
Name two axes available in Sitecore query:
ancestor-or-self::, parent::
Why shouldn’t you query the entire content tree?
Expensive – particularly if you are iterating through all descendants
Unless you are doing a very simple query on a very limited area of your Sitecore tree, what should you use instead?
Sitecore search
How does Sitecore support each of the CMS pillars:Data definition, Content, and Presentation?
Data definition: data templates. Content: items.Presentation: layouts and components
Describe some xWeb Content Management System features that separate Sitecore from other systems
AIDA: Analytics, Insights, Decisions, Automation.(Also accept: goal tracking, testing, reporting, personalization)
What is Site core’s easy-to-use authoring tool and what functionality does it provide?
The Experience Editor provides editing and designing functionality. (Also accept: marketing)
Which interface would an author use to see and edit items in a tree structure?
Content Editor
What should you define in a template?
Fields, Field sections, Icon and parent templates
What field type would you use to store formatted HTML?
Rich Text Field
What happens if you use the same field name in a template that is already used in a parent template?
You will get two fields with the same name, whichleads to confusion both to users and developers. It should be avoided.
What is the name of the template all templates should inherit from?
Standard Template
Why should you avoid defining the same field multiple times in more than one template?
It makes it much harder to manage later on.
What would you use the Field source for in the following field types: Image, Rich Text Field, Drop link?
- Image: Set the folder in the Media Library it will open when selecting an image for the field.
- Rich Text: Configuration of the toolbar and functionality of the Rich Text Editor.
- Drop link: Set the items to be displayed as options.
Why do you create Standard values? As options.
To be able to define default and initial values
What happens if you don’t set any insert options?
Only admins and privileged users will be able to create content (using the Insert from template option).
Where should you set insert options as a best practice?
In the Standard Values, so they are applied as a default to newly created items.
What happens when you set a field as shared? And unversioned?
A shared field contains a single version of the data for all versions in all languages. An unversioned field contains one version of the data per language.
When do tokens get replaced?
Only when items are created.
Why would you need to run a full republish?
Theoretically, you should not need to do this as a user.
If you set up some publishing restrictions, will Sitecore automatically publish that content at that exact time?
No. The publishing restrictions only dictates when an item or its versions are publishable or not.
What is the difference between the Master and Web database?
In terms of schema, there is no difference. The difference is more conceptual, in that, content for the live website is read from the Web database and content that is work-in-progress should be edited in the Master database.
Should a user work directly in the Web database if they need something to go live immediately?
A user should never work directly in the Web database. In fact, they should not even be able to access the Web database in the authoring tools.
Why would I want to use the data source in a component?
The data source allows you to build more flexible and re-usable components because the data source is determined by users and not hardcoded by developers.
Can we have placeholders inside of placeholders?
Not directly. However, you can have components inside a placeholder that in turn define other placeholders. This is referred to as nested placeholders.
Why is it a good idea to avoid using Rich Text fields as much as possible?
One of the benefits of using Sitecore is the separation of content and presentation. The Rich text field is the only exception to this, as it stores HTML content directly. If abused and not configured properly, it may give users the ability to break the design of the site.
What do you need to do to allow users to add and remove components from a placeholder using the Experience Editor?
Create a Placeholder Settings item for that placeholder.
Happens when you request a page that has no layout defined in the presentation details?
Sitecore shows a Layout not found error page.
Why do you define Presentation Details on Standard Values if the Standard Values item is never going to be mapped to the requested URL?
You want to define those Presentation Details as a default for all items based on that template. This will allow items to have valid presentation details already set when they are created.
Can you edit an item in the Experience Editor when the item has no presentation details set?
No, since it cannot be presented.
Which fields are editable inline using the Experience Editor?
Text fields (Single-Line, Multi-Line, Rich Text), Date/datetime, Image, General Link.
Give an example of when you would use the DisableWebEdit parameter when rendering a field.
Rendering a field inside the tag in the of the HTML.
How does Sitecore define a type of item (data schema)?
Using data templates
What is the name of the feature that makes WCM possible in Sitecore?
Experience Management ( xManagement)
What do you need in addition to the Experience Management to take full advantage of the Sitecore Experience Platform?
You need the Experience Database to take full advantage of the available features. It supports the Analytics and Marketing features.
Are all items pages in a Sitecore project?
No, items that are pages have their presentation details set.
What is the recommended version of Visual Studio for Sitecore development?
Any version that supports the .NET framework 4.0 will work for Sitecore development.
What tools can you use to install Sitecore?
Manual or zip file, EXE, Sitecore Rocks, SIM
What additional databases are required when running xDB?
Collection Database (MongoDB), Reporting, Session State
How do you patch in changes to the “sitecore” section of web.config?
Put a .config patch file in the App_Config/Include folder
You have just created new content but you cannot see it on your live website. Why not?
You need to publish new or edited content.
When you set up multiple site structures in the content tree, what is the recommended practice for handling content that will be shared between sites?
Keep it outside of any site structure.
What types of Visual Studio projects does Sitecore support?
ASP.NET Web Application, supporting MVC or Web Forms
How can you make your Visual Studio project portable?
By working outside the webroot
What is the difference between publishing and deploying?
Publishing copies items from the Master to Web databases while deploying copies files from your Visual Studio project to your webroot.
Name some the attributes that can be configured in the site node for a website. (think SiteDefinition.config file).
Name, host name, rootPath, startItem, language
What are some of the features of Sitecore Rocks?
Integration with Visual Studio. Creating and editing items, management tools, viewing website file system
To provide a rich user experience, what are some recommended practices you should use when you create templates?
Provide default values, use user friendly names and icons, limit the use of Rich Text Editors.
Where are default field values defined?
On the Template Standard Values item
Why is storing media in the Sitecore database an advantage?
It makes publishing easier because the item and the media are both published so you do not have to keep files in sync.
What item setting needs to be specified for authors to be able to add content?
Insert options
What is the recommended practice for setting insert options?
Insert options are set on the Template Standard Values item
Describe the anatomy of a Sitecore Layout?
A code file on the file system and definition item in the content tree
How is the layout file linked to the definition item?
By the Path field on the definition item.
How do you display the contents of a field in code?
@Html.Sitecore().Field(“”)
What can you use to translate fields and Help texts in the Sitecore Client?
Sitecore Dictionary entries
Which type of component would you create if you wanted to closely follow MVC patterns or invoke complex logic?
Controller Rendering
True or False: The view should contain all the business logic.
FALSE
What happens if allowed controls are not specified on a placeholder settings item?
In the Experience Editor, the user will be able to add any component to the placeholder.
How do you make Sitecore recognize of a controller rendering?
Create a component definition item and set the controller and controller action. Additionally, you can also set an Area.
You want to ensure header and footer are always visible on your Main layout. Will you statically or dynamically bind it?
Statically bind it when you need it to always appear on a layout or rendering.
What is the difference between the Renderings and Final Renderings fields?
The Rendering field is shared between all item versions and is used for global changes;
The Final Renderings field is not shared and stores language and version-specific changes.
An author adds a component to a page in the Experience Editor and the selects the Associated Content dialog box automatically appears. What triggers this behavior?
The component’s Datasource Location field is filled in.
How can you restrict authors to specific types of item for a component’s data source?
Add the data template to the component’s Datasource Template field.
How are component parameters stored in the Sitecore database?
As clear text in URL query string format
What data template must be used as a base template for your Parameters Template?
The Standard Rendering Parameters template
You have created a new Parameters Template. How do you ensure your component to uses it?
On the component’s definition item in the Parameters Template field
What are Compatible Renderings?
Components that can be exchanged or replaced with each other
What should you keep in mind when configuring Compatible Renderings?
- They should be set on both components so you can exchange them.
- Both need to be in the Allowed Controls for any placeholders they will appear in.
- They may need to share data source and parameters.
You have a component you would like cached anywhere it is used. Where would you define its cache settings?
On the component definition item in the Sitecore tree.
Why should you never cache a component that displays personal information?
Another visitor to your site can see that information
You have a component that you want cached on every Event Details page. Where would you define its cache settings?
On the component on the Event Details Template Standard Values item.
Why would you want to have the languageEmbedding option set to never?
The site is not multilingual.
How would an author cause a broken link when renaming an item?
The URL is usually made using the item names.
=> If the page was bookmarked in the browser, it will no longer work. You will need to implement 301 redirect logic.
How would you disable .aspx being added to all URLs that are generated from Sitecore?
By changing the addAspxExtension attribute of the LinkManager.
How can you globally change characters in the URLs that are generated from and resolved from Sitecore?
Using the encodeNameReplacements option in the web.config.
In which situations would you want to change the Links that are generated for an individual link?
If you need to force the language of content that is to be rendered from Sitecore.
Why is it important to have friendly folder structures within your content tree?
Because they dictate the segments that are within your URL.
How would you display the direct children of the Home item?
By retrieving the Home item using the Sitecore.Context.Site.StartPath.By invoking the GetChildren() method.
What is the danger of using a method like Axes.GetDescendants()?
It retrieves recursively all the children of all the children of the item. If invoked in an item near the root, it would load the entire tree in memory, with the corresponding performance penalty.
How can you skip certain items when you build the navigation?
Use LINQ to filter by template or the value of a particular field.
How would you render the content of an Image field on the website?
@Html.Sitecore().Field().FieldRenderer.Render()
What happens if you use one of those methods to render a Multilist field?
It would render the raw value of the field: pipe-delimited GUIDs
How would you render a Multilist field?
By retrieving its value in code and using it to create some output.
What class would you use to retrieve the contents of a Tree list field?
Sitecore.Data.Fields.MultilistField
How do you get the children items of an item?
.Children.GetChildren()
In what order do children item appear by default?
Alphabetically
Why would you preferably avoid sorting items in code, for example, using LINQ?
It might confuse authors to see items appear in a different order to the order shown in the Content Editor.
What is the name of the pop-up window in the Experience Editor that can be used to edit fields that are not editable inline?
A Field Editor
How would you enable the use of a Field Editor?
By adding a Field Editor Button to a toolbar
How would you show a toolbar in a random part of the page?
Using an Edit Frame
How would configure the buttons shown in an Edit Frame?
By creating some definition items in the Core databaseBy adding the Buttons property to the Field Editor
What is the biggest challenge when you post forms with Sitecore MVC?
Having multiple controllers invoked in the same page request. Only one of them should handle the post.
How do you bind a controller to deal with the post of a View Rendering?
By filling the Form Controller Name and Form Controller Action fields in the definition item of the View Rendering
What method do you need to invoke inside a View Rendering form to ensure only its controller reacts to the post?
Html.Sitecore().FormHandler()
Why should you not crate or modify items directly on the web database?
If the changes only exist on the web database they will get lost during the next publish operation.
What three pieces of information do you require to create an item?
Name, Template, Location (parent node)
How can you run part of your code with a set of privileges different from those of the context user?
UserSwitcher, SecurityDisabler
Why does Sitecore not allow the use of certain characters in an item name?
Item names are used to form the URLs. Some characters have a special meaning in a URL.
What methods do you invoke when you begin and finish editing an item through the API?
.Editing.BeginEdit()
.Editing.EndEdit()
What two core services conform the Sitecore Services Client?
ItemService, EntityService
What is the difference between a profile card and a pattern card?
A profile card is used to profile content. It acts as a preset of profile keys and values., Used during personalization or contact segmentation, pattern cards define archetypes to compare with the current profile of a contact and establish which one corresponds most closely with the interests of the visitor.
How can authors change a component through personalization?
They can change its data source, hide it, or exchange it for another component.
What do you need to do to support the use of personalization?
Componentize the page, and use data sources whenever possible.
Which item versions can have individual presentations defined on them
Numbered and language versions of an item
How do you access the Layout Details window for each item?
In Content Editor or Experience Editor click the Details command. In Sitecore Rocks choose Tasks -> Design Layout
What is the difference between the Shared Layout tabs versus the Final Layout tab of the Layout Details window?
The Shared Layout tab is for defining presentation details for all versions of an item while the Final Layout tab focuses on the presentation detail of that specific version of the item.
What will Return?
The context item.
Name two axes available in Sitecorequery:
- ancestor-or-self::, - parent::
Why shouldn’t you query the entire content tree?
Expensive –particularly if you are iterating through all descendants
Unless you are doing a very simple query on a very limited area of your Sitecore tree, what should you use instead?
Sitecore Search
What does the Datasource Location field automatically do in the Experience Editor?
Opens the Select the Associated Content dialog when authors add a new component
What happens if the Datasource Location and the Datasource Template fields are both filled in?
The “Select the Associated Content” dialog opens and authors can create a new content item using the template specified
What happens if the Datasource Location field is empty, but the Datasource Template field is not?
The dialog doesn’t open automatically, but when the author requests it, they see the whole tree with irrelevant items ghosted
What is the benefit of rendering Parameters Templates to authors?
- Reduces errors
- Authors do not have to specify the parameter name,
- Authors can choose values from dropdowns.
Which data template is used as a base template for your Parameters Template?
Standard Rendering Parameters template
If you want your component to use this new Parameters Template, where do you assign it?
On the components definition item in theParameters Templatefield
When you add to your sublayout, what must you do for the placeholder to be selectable in the Experience Editor?
Create a Placeholder Settingsdefinition itemin Sitecore
What else do these Placeholder Settings items allow you to specify for authors?
Which components authors can insert into a placeholder.
What are Allowed Controls
They determine which components can be added to a particular placeholder
Which Experience Editor mode supports adding components into placeholders?
Designing
If a component is not in the Allowed Controls list, can it be added into that placeholder through the Experience Editor?
No
What are Compatible Renderings
Components that can be used in place of another component
What two elements should you keep in mind when setting up Compatible Renderings?
Both components need to be able to accept the same Datasource and the same Parameters
If a component is not in the Allowed Controls list, can it still be used as a Compatible Rendering?
No
Once Custom Experience buttons are assigned, where do they show up?
On a component / field and displayed in the Experience Editor
Name two examples of custom buttons:
FieldEditorandWebEditbuttons
On what type of definition item can you assign Custom Experience buttons?
- component definition item or
- a field definition item
What do Edit Frames do?
Surround an area on a page or component and display buttons allowing you to edit fields that would not be normally editable in the Experience Editor
In which database do you create the Custom Experience buttons and Edit Frames?
Core
Use a bucket when …
You do not need a hierarchical item structure and/or you have a large number of items
In order to store an item in a bucket, you must…
Make that item or the data templates standard values it is based on bucket able
After making changes to the bucket ability of the items in a bucket, you must…
Sync the bucket
What do facets allow you to do?
Progressively apply filters (based on fields) to narrow down your result set
How do you create a bucket?
Select the item you want to turn into a bucket and click the ‘Bucket’ command on the Configure tab
What defines how Sitecore items should be indexed?
Index configuration files in /App_Config/Include
Search is built using a provider model. What does this mean?
You can plug in whatever search provider you want
What syntax do you use to query an index?
LINQ
What is the name of Sitecores default search result class?
SearchResultItem
When building your own search result class, how do you account for fields with spaces?
Decorate with [IndexField(“Page Heading”)]
What method should you use to return a rich results object?
GetResults();
You can configure how fields get indexed by type or…
Name
You can include/exclude by individual field names or…
ItemTemplates
Which attribute must be set to ‘YES’ in order for values to be stored in the index?
storage Type
Which two search providers does Sitecore ship with?
Lucene and Solr
If you wanted to store the number of comments a news article has, what type of field might you use to perform the calculation?
A computed field
Why should you tune your index configuration and not index everything by default?
Large, unwieldy index as your solution grows
What are the three layers that the item cache mechanism have?
- Item
- Data
- Prefetch
What operation clears the HTML cache?
Publishing
What is the path for .aspx page that clears all cache?
/Sitecore/admin/cache.aspx
Cache settings are defined in what file?
web.config
Name three places where component HTML caching options can be defined
- Definition item, - Standard Values, - per|instance of the component
Name three places where component HTML caching options can be defined
- Definition item
- Standard Values
- per|instance of the component
Name the 3 publishing modes
- Incremental, - Smart, - Republish
Name the 3 publishing modes
- Incremental
- Smart
- Republish
Publishing restrictions can be applied to _____ , _____ and _____
Numbered versions of items, the item itself and targets
What are the recommended servers for an installation and which databases are on each server for a production environment?
- CM with core, master and web, - CD with core and web, - Separate DB server, -xDB with separate collection, reporting and aggregation servers
What are the recommended servers for an installation and which databases are on each server for a production environment?
- CM with core, master and web
- CD with core and web
- Separate DB server
- xDB with separate collection, reporting and aggregation servers
Name two development models
Inside and outside the web root
Which is the best practice?
Development outside the web root
What are the options to source control your items?
You can serialize your items for source control with Sitecore Rocks or use a product like TDS to do it.
What is the recommended way of patching in changes to web.config?
Patch web.config with include files, located under /App_Config/Include
What are Sitecore packages and what do they contain?
Zip files that contain items and code files
What is the name of the .aspx that you go to when upgrading Sitecore?
/sitecore/admin/updateinstallationwizard.aspx
Which application (in sitecore start menu) is used to view the resolved access rights
Access Viewer
You can assign access rights to _____ and _____
Users and roles
Can access be explicitly given to a user to override the role access right?
Yes
Name three permissions that are applied to access rights
Allow, deny and not specified = deny
What are workflows used for?
Content approval, versioning and tracking
Items go through a series of ______
States
Each state can contain certain ______ and ______
Commands and Actions
When is an item publishable?
In the Final State
When is a new numbered version created?
When an items version is in a final workflow state and then subsequently is edited by a non-Administrator.
What tool will show you all contacts that have been to your site?
Experience Profile
How does Sitecore store visitor data?
- Data is collected in a MongoDB collection database, - That information is aggregated and stored in a SQL Server database optimized for reporting
How does Sitecore store visitor data?
- Data is collected in a MongoDB collection database
- That information is aggregated and stored in a SQL Server database optimized for reporting
Goals can be assigned to specific items and/or …
They can be triggered programmatically
What s the purpose of testing?
Establish which content or components makes your visitors react more favorably
When can authors start a test?
As part of workflow–whenever they have made a change on a page
What can be tested?
Content, components or entire pages
What to do to make sure your author can use the testing functionality?
- Add ‘Launch Create Test Dialog’ to workflow, - Make sure the Experience Editor works and is configured correctly, - Ensure components that should be tested are configured to accept data sources
What to do to make sure your author can use the testing functionality?
- Add ‘Launch Create Test Dialog’ to workflow
- Make sure the Experience Editor works and is configured correctly
- Ensure components that should be tested are configured to accept data sources
How does componentization and use of data sources support personalization?
As a visitor navigates around the site, components can be added / hidden or their data changed to match a particular pattern card or profile key score
Best Practice: Why use Project Folders?
If there are many data templates, it is best to group them into subfolders for organization
Best Practice:Avoid Circular Inheritance
Although you can use a data template multiple times in the inheritance chain, you should avoid creating a circular template inheritance (A > B > A).
Tip:View Template Hierarchy by
Right-click the item and click Navigate->Template Hierarchy. Two icons allow you to see inherited and inheriting data templates
Best Practice:Nesting Sub layouts
Sub layouts routinely have 1 or more placeholders which allow nested sub layouts to be added., An example, a two-column sub layout will have 2 placeholders in divs with styling., Then add other sublayouts into each of those “columns”.
Helpful Code:What are some commonly Used Item Properties
item.Namethe item’s name, item.IDthe GUID (Globally Unique ID), item.ParentIDthe GUID of the item’s parent, item.Childrena Collection of type ChildList of the first level descendants
Helpful Code:What are some commonly Used Item Properties
- item.Namethe item’s name
- item.IDthe GUID (Globally Unique ID)
- item.ParentIDthe GUID of the item’s parent,
- item.Childrena Collection of type ChildList of the first level descendants
Best Practices:Edit Field Values in a Try/Catch Block:
Try:item.Editing.BeginEdit() and item.Editing.EndEdit(),
Catch:Editing.CancelEdit() should go in the catch block
Also, without the EndEdit, the new field values are not saved to the database.