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