Sitecore 10 .NET Developer Certification Exam Flashcards

1
Q

How do you patch in changes to the sitecore section of Web.config?

A

Put a .config patch file in the /App_Config/Include folder.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

How are component parameters stored in the Sitecore database?

A

As clear text in URL query string format.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

How can you retrieve the datasource in a view rendering with the default model?

A

Model.Item

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

With a particular rendering an editor can only select items of one particular content type. How can this be achieved?

A

By setting the template ID into the Data Source template field.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

An author adds a component to a page in the Experience Editor and then selects the Associated Content dialog box. What triggers this behaviour?

A

The component’s Datasource Location field is filled in.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What property will automatically prompt a user to choose a datasource when adding a component in the Experience Editor?

A

Datasource Location

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

How can you force a Sitecore control to output the content of an item’s datasource?

A

Set the datasource or item property.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

How can you restrict authors to specific types of item for a component’s datasource?

A

Add the data template to the component’s Datasource Template field.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Why would you set the component on the Standard Values and override the datasource on the items?

A

When your component has to appear on every page but has a different datasource for a particular page.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What should you use if you want a Title field to be filled with the name of the item on item creation?

A

Use the $name token on the Standard Values of that template.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

When you add @Html.Sitecore().Placeholder(“main”) to your rendering, what do you need to do to make the placeholder selectable in the Experience Editor?

A

Create a Placeholder Settings definition item.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Why must you create a corresponding Placeholder Settings item in the Sitecore environment after declaring a placeholder in the code of a layout/component?

A

A Placeholder Settings item is necessary for the placeholder to be accessible and used in the Experience Editor.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Can you use placeholders inside of placeholders?

A

Not directly, but you can have components inside a placeholder that define other placeholders. They are referred to as nested placeholders.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Dynamic placeholders have a unique ID assigned when they appear on a page created from the original placeholder key. Which is the appropriate format for the unique ID?

A

Key-#-{GUID}

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What happens if allowed controls are not specified on a Placeholder Settings item?

A

In the Experience Editor, the user will be able to add any component to the placeholder.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is the purpose of the Standard Values of a template?

A

To provide a default value when the item is created or to have a fallback when a field has NULL value.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Which of the following options is essential for defining default values and for setting default configurations (Insert Options, Presentation Details etc.) on a template?

A

Standard Values

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Why would you need to use the data source in a component?

A

Data source allows you to build more flexible and reusable components, because the data source is determined by users and not hardcoded by developers.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

How would you show a toolbar in a random part of the page?

A

Using an Edit Frame.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

What template must be used as a base template for your Paramaters template?

A

The Standard Rendering Parameters template.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

You have created a new Parameters template. How do you ensure your component uses it?

A

Through the component’s definition item in the Parameters template field.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

What is the default model used by view renderings and optionally by controller renderings?

A

RenderingModel

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Which of the following view types can be used to render HTML output within another view’s rendered output?

A

Partial views

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

What two other terms have the same meaning as component?

A
  • Rendering
  • Control
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

What are the two types of file needed for a model-bound component?

A
  • Model.cs
  • View.cshtml
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

What would be a good reason for using a custom view component rather than a model-bound view component?

A

The site needs a component that will integrate with a third-party source for content.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

You’ve been asked to ensure users can easily swap out a promotion component with an alternative component option that has no image when used in a smaller space on a page. How would you make the distinction that these two components are interchangeable?

A

By using compatible renderings in the component definition item.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

What should you keep in mind when configuring compatible renderings?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

Which type of component would you create if you wanted to closely follow MVC patterns or invoke complex logic?

A

Controller rendering

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

How do you bind a controller to deal with the post of a view rendering?

A

By filling the Form Controller Name and Form Controller Action fields in the definition item of the view rendering.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
31
Q

What method do you need to invoke inside a view rendering form to ensure only its controller reacts to the post?

A

@Html.Sitecore().FormHandler()

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
32
Q

In a view, what do you need to do so the Field() extension method retrieves the content from the data source?

A

Nothing, it’s its default behaviour.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
33
Q

What can be the reason $token is visible in one of the items as “$token” and not replaced with its value?

A

$token will replace by value for newly created items, not existing ones.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
34
Q

Which of the image properties allows you to specify how much space should be placed around the image?

A

The Space section.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
35
Q

Why is there a master and a web database?

A

It allows content to be edited without affecting the live data/website.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
36
Q

Why should you not directly edit in the web database?

A

Because on the next master publish the content will be overwritten.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
37
Q

A single item needs to be published. What two features do you use?

A
  • Content Editor
  • Experience Editor
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
38
Q

You have just created new content but you can’t see it on your live website. Why not?

A

You need to publish new/edited content.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
39
Q

A new Sitecore developer wants to know the difference between web and master databases. Which of the following best describes the difference?

A

The master database contains all versions of all the content (including unpublished content), while the web database contains only content that is live on the site.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
40
Q

Why is storing media in the Sitecore database an advantage?

A

It makes publishing easier because the item and the media are both published, so you don’t have to keep files in sync.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
41
Q

If you set up some publishing restrictions, will Sitecore automatically publish that content at the same time?

A

No, the publishing restrictions only dictate when an item or its versions are publishable or not.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
42
Q

Why should you not add Presentation Details on every new content item?

A

Use Standard Values of the template so that every item based on this template will have the same layout.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
43
Q

The customer wants to temporarily change the layout of a homepage. Which feature of Sitecore should make this possible?

A

Versioned layouts

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
44
Q

A new Sitecore developer says they want to start to build out the general structure of the rendered appearence of a webpage. What are they describing?

A

Layout

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
45
Q

What is mandatory for Presentation Details?

A

Layout

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
46
Q

What do you at least need to create a layout?

A
  • .cshtml file
  • Layout item
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
47
Q

Describe the anatomy of a Sitecore layout.

A

A code file in the file system and a definition item in the content tree.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
48
Q

How is the layout file linked to the definition item?

A

By the Path field on the definition item.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
49
Q

What is the difference between Shared and Final layouts?

A
  • Shared: Controls added in the layout are shared in all languages and numbered versions
  • Final: Changes made in the layout are specific to that language and version
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
50
Q

What happens when you request a page that has no layout defined in the Presentation Details?

A

Sitecore shows a “layout not found” error page.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
51
Q

Can you edit an item in the Experience Editor when the item has no Presentation Details set?

A

No, since it can’t be presented.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
52
Q

How do you address a placeholder?

A

By using the placeholder key.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
53
Q

How do you specify a static component in a .cshtml file?

A

@Html.Sitecore().Renderings(“Path or ID”)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
54
Q

How do you render the content of a single line text field called Title?

A

@Html.Sitecore().Field(“Title”)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
55
Q

What is the advantage of using components?

A

Your presentation artifacts are more reusable.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
56
Q

You want to ensure headers and footers are always visible on your Main layout. Will you statically or dynamically bind it?

A

Statically bind it when you need it to always appear on a layout or rendering.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
57
Q

What must you do to ensure a controller rendering can be inserted into a placeholder on your site page?

A

Add the controller rendering to the placeholder settings of that placeholder.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
58
Q

What is the purpose of a dynamic placeholder?

A

To apply the same placeholder multiple times with different renderings in it.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
59
Q

In Sitecore MVC, how do you make a field non-editable?

A

By setting DisableWebEdit to true.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
60
Q

A placeholder is defined in code but not visible in the Experience Editor. What is most likely the cause?

A
  • Placeholder Settings item has to be created
  • Placeholder should be added to the Presentation Details
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
61
Q

How to optimize the process for an author to prevent removing renderings if they just want to switch the view of a component?

A

Add a rendering to compatible renderings.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
62
Q

How do you create a component that can’t be edited in the Experience Editor?

A

Use static component binding.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
63
Q

What do you need to create when you have a view rendering?

A

Razor view

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
64
Q

If you want to have reusable elements in your layout, what kind of view should you create?

A

Partial view

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
65
Q

Which .dll relates to presentation? Which dll is required to get RenderingContext?

A

Sitecore.Mvc.dll

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
66
Q

How do you access the HTTP request properties?

A

Sitecore.Context.Request

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
67
Q

What of these properties are available in the Sitecore.Context class?

A
  • User
  • Database
  • Language
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
68
Q

How would you display the direct children of the Home item?

A
  • Retrieve the Home item using Sitecore.Context.Site.StartPath
  • Use GetChildren() method
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
69
Q

What is the danger of using a method like Axes.GetDescendants()?

A

It retrieves recursively all children of all 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 well did you know this?
1
Not at all
2
3
4
5
Perfectly
70
Q

How do you get the children items of an item?

A
  • .Children
  • .GetChildren()
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
71
Q

What is the difference between GetChildren() and GetDescendants()?

A
  • GetChildren: Returns all direct children of an item
  • GetDescendants: Return all items under an item
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
72
Q

How can you populate the property of a ViewModel and still support inline editing in the Experience Editor?

A

By using the Render() method in the FieldRenderer class.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
73
Q

How do you put an item into the Editing state?

A

By creating an Edit Context.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
74
Q

What methods do you invoke when you begin and finish editing an item through the API?

A
  • .Editing.BeginEdit()
  • .Editing.EndEdit()
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
75
Q

Why would you preferably avoid sorting items in the code (LINQ etc.)?

A

It might confuse the authors to see items appear in different order to the order shown in the Content Editor.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
76
Q

How can you skip certain items when you build the navigation?

A

Use LINQ to filter by template or value of specific fields.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
77
Q

How can you run part of your code with a set of privileges different from those of the context user?

A
  • UserSwitcher
  • SecurityDisabler
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
78
Q

What two core services conform to the Sitecore Services Client?

A
  • ItemService - Access to regular Sitecore items
  • EntityService - Access to business objects
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
79
Q

What is an item bucket?

A

A container that allows you to hide innumerable items within, while still being easily retrievable.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
80
Q

How do you find items in buckets?

A

Content Search API

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
81
Q

Why would an item show in the content tree even though it is a child of a bucketed item?

A

It’s not bucketable.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
82
Q

What part of Sitecore is in charge of generating URLs?

A

LinkManager

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
83
Q

Where can you customize how URLs are rendered globally?

A

In the LinkManager section of the Web.config.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
84
Q

How can you get Sitecore to produce translated URLs?

A

By setting the LinkManager to use the item’s Display name.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
85
Q

Why is it important to have friendly structures within your content tree?

A

Because they dictate the segments within your URLs.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
86
Q

In which situations would you want to change the links generated for an individual link?

A

If you need to force the language of content that is to be rendered from Sitecore.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
87
Q

How can you globally change characters in the URLs that are generated and resolved from Sitecore?

A

Using the encodeNameReplacements option in the Web.config.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
88
Q

How would you disable .aspx being added to all URLs that are generated from Sitecore?

A

By changing the addAspxExtension attribute of the LinkManager.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
89
Q

How would an author cause a broken link when renaming an item?

A

The URL is usually made using item names. If the page was bookmarked in the browser, it will no longer work. You will need to implement 301 redirect logic.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
90
Q

Why should you never cache a component that displays personal information?

A

Another visitor to your site could see that information.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
91
Q

Which of the following commands is used to enable caching for a site?

A

cachehtml = “true”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
92
Q

What kind of information is stored in the Prefetch cache in Sitecore?

A

Items that Sitecore will need to access during and just after initialization of the instance.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
93
Q

Why would your team decide to disable the Prefetch cache in your Sitecore solution?

A

The cycle of continuous caching and the prefetching of too many items will increase the load on the SQL server and may degrade the startup time of your application.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
94
Q

You have a component you would like cached anywhere it is used. Where would you define its cache settings?

A

On the component definition item in the Sitecore tree.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
95
Q

You have a component that you want cached on every Event Details page. Where would you define its cache settings?

A

On the component on the Event Details template’s Standard Values item.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
96
Q

How are workflows defined?

A

Through definition items under /sitecore/settings/workflow.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
97
Q

How do you bind a particular workflow with a certain type of item?

A

By setting the initial workflow in the template’s Standard Values.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
98
Q

What are some advantages of using workflows?

A
  • Acquire content approval
  • Prevent unwanted publishing
  • Automatic numbered versioning
  • Content testing
  • Publishing to a preview target
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
99
Q

What are the two consequences of making a state Final?

A
  • Items in it can be published
  • Sitecore creates a new version when a non-admin user tries to edit it
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
100
Q

What can you find in the workbox?

A

Available commands on items grouped by workflow.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
101
Q

What is the point of the Write access right state?

A

To override the Write Permission for an item while it’s in a particular state.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
102
Q

What is the purpose of the extranet domain?

A

To provide access to the website for specific roles and users.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
103
Q

A user has been locked out by multiple login attempts using the wrong password. How should you resolve this?

A

Use the Unlock button in the User Manager.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
104
Q

What is the best practice for setting permissions for a user?

A

Create roles and assign users to them.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
105
Q

A user is assigned to a role and suddenly has no access to content that was previously available. What happened?

A

The new role has explicit access denied for that content, which overrides the granted access of the other roles.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
106
Q

Which roles access right will take precedence?

A

deny

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
107
Q

What are the two types of accounts?

A
  • Users
  • Roles
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
108
Q

Name some Sitecore Security Apps.

A
  • Access Viewer
  • Security Editor
  • Role Manager
  • User Manager
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
109
Q

Which user is bound to unauthenticated requests to the frontend website?

A

extranet\Anonymous

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
110
Q

What role does a user need to be able to log in to the Sitecore backend?

A

Sitecore Client Users

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
111
Q

Can you assign a user to a role from a different domain?

A

Yes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
112
Q

Where are access rights stored?

A

In the Standard field on items.

113
Q

What happens if an access right is unspecified?

A

Sitecore will inherit the value from the parent item, unless inheritance is disables/denied.

114
Q

What are the effective permissions of a user?

A

Those defined on the user, plus those defined on any roles it belongs to.

115
Q

What role can you give access rights to so that they apply to all accounts on Sitecore?

A

Everyone

116
Q

What happens if a role denies an access right and another one allows it?

A

It’s denied.

117
Q

What are the two main security best practices?

A
  • Don’t set security on users
  • Avoid using explicit denies
118
Q

What is the default implementation of a class to use in Search that Sitecore provides?

A

SearchResultItem

119
Q

Once you retrieve the index you need, what should you do to enable a query to run against that index?

A

Set up the search context.

120
Q

When should you use a Computed field?

A

When you need to use field data to calculate a different value to be stored in the index itself.

121
Q

Why do you use an item bucket?

A

If you have a large amount of content within the content tree and need a scalable solution for authors to work with.

122
Q

How do you use Search facets?

A

To filter results after an initial search has been run.

123
Q

What is the advantage of setting StorageType to Yes in an index field?

A

There is no need to access the Sitecore database to query its value.

124
Q

You have used Group by clause to get a result from the index, but you didn’t get anything. Why?

A

Group by clause is not supported by Sitecore Search API.

125
Q

Which parts of IQueryable<T> implementation over Search providers are not supported?</T>

A
  • GroupBy
  • Aggregate
  • Sum
126
Q

As a developer, your company has tasked you with creating a blog survey. You’ve reached the final step where you need to set a submit action for the submit button. Select the submit action that ensures a user is navigated to a thank you page upon clicking submit.

A

Redirect to a page

127
Q

In what order are language settings applied?

A
  • Querystring
  • Url
  • Cookie
  • Project config file
  • Sitecore config file
128
Q

Why does Sitecore not allow the use of certain characters in item names?

A

Items are used to form the URLs. Some characters have special meaning in URLs.

129
Q

As a developer, you’re tasked with enabling item-level language fallback on a content page. To support more than one language, which of the following steps is mandatory?

A
  • Specifying language fallback
  • Enabling site-level fallback
130
Q

Why would you want to have the languageEmbedding option set to never?

A

The site isn’t multilingual.

131
Q

xConnect currently has what two services?

A
  • Collection
  • Search
132
Q

What happens if you forget to include @Html.Sitecore().VisitorIdentification() inside the <head> of the page?

A

All visitors will be treated as bots and their information won’t be stored in the xDB.

133
Q

How does Sitecore track a device?

A

Sitecore places a tracking cookie in the browser and stores a reference to it in the xDB.

134
Q

How does Sitecore initially identify a contact?

A

By using the Identify() method invoked with a suitable identifier.

135
Q

What does Sitecore use to identify a user?

A

Sitecore.Analytics.Tracker.Current.Identifier(email)

136
Q

How to get data from xDB?

A

xConnect

137
Q

How does Sitecore know you’re a returning customer?

A

By calling the Identify() method.

138
Q

Describe some xWeb CMS features that separates Sitecore from other systems.

A
  • Analytics
  • Insights
  • Decisions
  • Automation
139
Q

What additional databases are required when running xDB?

A
  • Collection
  • Reporting
  • Session State
140
Q

Who should you contact when encountering issues with Sitecore Support?

A

For communication, timing or access issues, contact your regional sales office.

141
Q

What is the purpose of a Sitecore Support Package?

A

Sitecore can replicate the issue without access to your environment.

142
Q

What do you need when contacting Sitecore Support?

A
  • Sitecore credentials with write access to the Sitecore Support Portal [M]
  • License ID for the customer where the issue relates to [M]
    Note: Partner License ID should only be used for pre-sales and R&D purposes
  • Case description on how to reproduce the issue [M]
  • Relevant configuration, log and env related files
    Note: Errors should be added as plain text files
  • Sitecore Support Package
143
Q

What should you do before contacting Sitecore Support?

A
  • Examine Sitecore log files for errors/warnings
  • Compare your configurations with the Sitecore stock configurations or prior deployments
  • Search for solutions on official and community documentation sources
  • Run the self-test diagnostics from the Sitecore Diagnostics Toolset
  • Reproduce the issue on a clean Sitecore environment and create a Sitecore Support Package with the diagnostics information
144
Q

Why is it important to provide Sitecore Support with reproducibles scenarios when submitting a support case via Support Portal?

A

Sitecore Support needs to be able to reproduce the issue to determine a solution within a clean environment.

145
Q

Why should you utilize Attach to Process in Visual Studio when working with Sitecore?

A

To ensure you are attaching to your Sitecore site.

146
Q

What is the difference between publishing and deploying?

A
  • Publishing: Copies items from Master to Web databases
  • Deploying: Copies files from VS project to webroot
147
Q

How can you make your Visual Studio project portable?

A

By working outside the webroot.

148
Q

What is the role od the CD in a headless setup?

A

Provides layout and content through API.

149
Q

Which of the following options outlines the benefits of working with a headless Rendering Host for Sitecore development?

A

You can run the Rendering Host app directly in Visual Studio.

150
Q

Which of the following statements best describes the primary fuction of the Layout Service?

A

Provides structured data about pages in Sitecore, including their components and fields.

151
Q

Why would you use a JSON rendering item instead of a view rendering item?

A

View for MVC components and JSON for headless components

152
Q

Why would you use a custom Rendering Contents Resolver with a JSON rendering?

A

Need access to more complex data from within Sitecore for the component you’re creating.

153
Q

How does the Sitecore.LayoutService NuGet package support the development of more advanced components?

A

Provides access to assemblies and types necessary for extending the Layout Service output.

154
Q

Why would you want to use a contents resolver to display values from Sitecore search indexes?

A

They allow you to write custom C# code to affect the Layout Service output.

155
Q

Why should the component renderer be registered in Startup.cs in an ASP.NET Core Rendering Host lookup? Why do you register the view?

A

To provide the SC placeholder with a component to be rendered when combined with the Layout Service output.

156
Q

When would you most likely use the ASP.NET Core Rendering SDK over the other Sitecore rendering tools available?

A

Customer requires a heavily customized frontend and has some complicated business logic.

157
Q

What type of rendering will you be making when working with Sitecore ASP.NET Core Rendering SDK?

A
  • JSON rendering
  • Features of ASP.NET Core Rendering SDK (integration with Sitecore XP to support Experience Editor, analytics and personalization)
158
Q

What is the method used to register a model-bound view?

A

AddModelBoundView

159
Q

Where do you register the view for a component?

A

In Startup.cs under the ConfigureServices method.

160
Q

Which of the following do you use to register a non-default partial view in Startup.cs?

A

.AddPartialView()

161
Q

As a developer tasked with building and running cross-platform web, server and console apps, which of the following must you have installed on your workstation to accomplish the task?

A
  • Powershell 5.1
  • Docker
  • .NET Core 3.1 SDK
162
Q

What are the benefits of Sitecore Headless Development?

A

Introduces efficiencies in developing, maintaining, scaling and upgrading Sitecore solutions.

163
Q

Can I use the ASP.NET Core Rendering SDK without using Sitecore containers?

A

Sitecore containers ease up the setup of the development environment, but it isn’t a requirement for Sitecore Headless Development. You can build Sitecore solutions with ASP.NET Core Rendering SDK in any type of supported infrastructure or hosting model.

164
Q

What features are not supported in Sitecore Headless Development?

A
  • Horizon
  • Edit frames
  • Sitecore Forms
  • Invocation of xConnect events, goals and outcomes from C#
165
Q

What do you use Sitecore Content Serialization for?

A

To easily move content between different environments.

166
Q

What is the purpose of Module.json?

A

Set paths of content to be serialized.

167
Q

What if the module is not defined in Sitecore.json?

A

The content won’t be serialized.

168
Q

What is true when speaking of both Sitecore CLI and Sitecore for Visual Studio?

A

Same functionality, different user interfaces. Users can choose which one to use.

169
Q

Serialization helps to support development experience by?

A

Allowing developers to easily move and share serialized items across different environments.

170
Q

Why would a developer create an include within a module?

A

Includes help to specify which sections of the content tree you want to serialize.

171
Q

If a developer created an include that serializes all items starting at “Sample Items”, and wanted to specify that this include should serialize all items and all descendants of the item. Which include property would they use to indicate this?

A

Scope

172
Q

If you create a module with a path that doesn’t match one of the paths set in the Sitecore.json file, what will the outcome be?

A

The module won’t be included when you run the serialization.

173
Q

What are the two tools for serialization?

A
  • Sitecore CLI
  • Sitecore for Visual Studio
174
Q

What file is generated with Sitecore CLI?

A

dotnet-tools.json

175
Q

What is dotnet-tools.json?

A

It shows the version as well as the command that you can use to access the functionality of the CLI.

176
Q

What is Sitecore CLI?

A

It enables devs to communicate with a Sitecore instance from the command line. It allows to log in to a remote instance, publish content and serialize items. It’s fast and works extremely well remotely, which supports an optimized developer experience.

177
Q

What are the CLI commands?

A
  • login (authenticate CLI to a SC instance)
  • plugin (manage plugin commands)
  • init (create SC configurations in current directory)
  • index (work with indexes’ data)
  • itemres (Resource Items Package commands)
  • ser (item serialization commands)
  • publish (perform publish operation on all content)
178
Q

How should you persist your items in source control?

A

By serializing them. How they get serialized will depend on the tools at your disposal.

179
Q

What process is used to write database rows of Sitecore to files on disk?

A

Serialization

180
Q

What is Sitecore for Visual Studio?

A

Designed to work with new Sitecore Developer command-line tools to provide seamless integration into Visual Studio 19. Its serialization functionality mirrors that of Sitecore CLI. Additionaly it offers the ability to easily create modules, includes, rules and so on by using a GUI.

181
Q

Sitecore CLI and Sitecore for Visual Studio offer…

A

the same features with different interfaces. The Sitecore Content Serialization tool allows you to choose the option you’re most confortable with between CLI and GUI.

182
Q

What problems does Sitecore Content Serialization solve?

A

Sitecore items are created and updated all the time. These changes must be synchronized across Sitecore instances and between developers working on the Sitecore solution, in the same way they would share code. However, the process of synchronizing item changes is prone to error and time-consuming, because of limited automation facilities. Sitecore Content Serialization addresses this with out-of-the-box item serialization that lets you automate synchronization of item changes.

183
Q

What are the benefits of using Sitecore CLI or Sitecore for Visual Studio?

A

Sitecore CLI is a command-line interface that interacts with Sitecore instances. This provides increased automation and version control. Sitecore for Visual Studio is a graphical tool that interacts with Sitecore instances from within Visual Studio. It provides the same capabilities as Sitecore CLI but is intended for users who are not familiar with command-line tools.

184
Q

What functionality does TDS offers that is not in Sitecore for Visual Studio?

A
  • File deployment into local Sitecore instance
  • Web Deployment Package generation
  • Code generation
  • Validators
  • Environment validation
185
Q

When creating custom Sitecore images for your solution, you should?

A
  • Include a Sitecore runtime Dockerfile for each container that makes up your Sitecore topology
  • Layer-built outputs from your solution and other assets onto the base Sitecore runtime images
186
Q

What are the benefits of using the Docker Tools development ENTRYPOINT and watch script?

A
  • Faster development feedback loops
  • Overcoming limitations of mounted folders in Windows containers
  • Clean separation of your solution output from Sitecore-provided files
187
Q

To run the initialization script and install the Getting Started template successfully, you need?

A
  • Path to valid Sitecore license
  • Desidered admin password
188
Q

Module assets images are…

A

never directly run, just used as a source for layering into your custom images.

189
Q

Which Docker Compose file has additional containers and specifications for a Docker container deployment of Sitecore with the Getting Started template?

A

docker-compose.override.yml

190
Q

What type of environment role is not included in an XP0 Docker container deployment of Sitecore?

A

CD

191
Q

How do you deploy code into the CM instance when using the Getting Started template?

A

Publish the Platform project from Visual Studio.

192
Q

What is the view window associated with Sitecore for Visual Studio?

A

Sitecore module explorer

193
Q

What is the Docker command for pulling the logs for the rendering container?

A

docker-compose logs -f rendering

194
Q

How to debug the CD that’s running a Docker container?

A

Attach to w3wp process.

195
Q

What is the Sitecore container registry?

A

Docker images available for dev and prod purposes are available here.

196
Q

When should you use HOST_LICENSE_FOLDER instead of SITECORE_LICENSE?

A

If the license compression fails and is giving errors, you can mount the license through volumes and the host license folder .env variable.

197
Q

What are the requirements for running Sitecore with containers?

A
  • Windows 10 v1809 or greater
  • Docker Desktop for Windows
198
Q

Where can you find the walkthrough for downloading, installing and using the Getting Started template?

A

Sitecore documentation

199
Q

What does a Docker ENTRYPOINT provide?

A

The command to execute when the container is first run.

200
Q

Which of the following is not a necessary workstation prerequisite for using the Getting Started template?

A

Command Prompt v10

201
Q

Which of the following are necessary workstation prerequisites for using the Getting Started template?

A
  • PowerShell v5.1
  • Docker for Windows
  • .NET Core 3.1 SDK
202
Q

What arguments are absolute requirements to provide to the int.ps1 script upon execution before running the Getting Started up.ps1 script for the first time?

A

InitEnv -LicenseXmlPath “C:\license.xml” - AdminPassword “password”

203
Q

What is the purpose of the clean.ps1 script in the Docker folder of the MyProject files?

A

To clean the environment of all persistent data.

204
Q

Which Visual Studio window allows you to attach to process in a running container?

A

Containers

205
Q

The Getting Started template deploys what type of Sitecore architecture?

A

Sitecore Experience Platform XP0

206
Q

You are in the process of converting your Sitecore license file by compressing and encoding it using the script Sitecore provided. As you proceed to run the code, you receive an error that the license file is incompatible. What steps can you take to resolve this error?

A

Mount the license file as a Docker volume and populate the SITECORE_LINCENSE_LOCATION environment variable on each service.

207
Q

Running Sitecore with containers also requires specific hw capabilities. If you are running a full XP Server instance, what amount of RAM do you need to run it successfully?

A

32GB

208
Q

What are the identified Sitecore supported topologies for Docker?

A
  • XP Workstation
  • XP Server
  • XM Server
209
Q

What are the software prerequisites for Docker?

A
  • Windows 10 Pro or Enterprise v1809 (2019 LTSC) or later
  • Hyper-V
  • Docker Desktop for Windows
  • Docker Compose
  • Visual Studio or Visual Studio Code
210
Q

When to use the XP Workstation topology?

A

To reduce memory overhead, download size or complexity, and to improve startup/shutdown time. Designed to be used as a Developer Workstation for Docker.

211
Q

When to use the XM Server topology?

A

To reduce deployment time and lower the resource overhead in non-production environments. Designed for use in production and non-production environments.

212
Q

When working with multisite implementation, what’s the recommended practice for creating each site’s tree structure?

A
  1. Create a specific Site Definition configuration.
  2. Create a folder for each site under the Content item.
  3. Create a Home item for each site within the folder.
213
Q

What are the reasons to assigning security rights to roles instead of individual users?

A
  • Roles enable you to control security access for group of users and roles simultaneously.
  • Assigning permissions to individual users can be confusing and create risk.
214
Q

When is template inheritance not recommended for fields with the same name?

A

When the fields require different field sources.

215
Q

What is the default scope for a serialization include if the scope is not defined?

A

ItemAndDescendants

216
Q

Sitecore recommends defining an item’s Presentation Details as part of the Standard Values child item of a data template. Why is it important to define Presentation Details in the Standard Values item?

A

Items created from templates inherit the Standard Values (including Presentation Details) and NULL fields default to the template’s Standard Values.

217
Q

The component you just completed is statically bound to a page. What is one implication of static binding components like this?

A

Authors can’t select the component in the Experience Editor in Designing mode.

218
Q

What is the purpose of a .env file when deploying Sitecore to containers?

A

The .env file allows you to declare environment variables for your Docker containers.

219
Q

What is the purpose of the Sitecore Core database?

A

To store settings and content for the Sitecore application itself.

220
Q

With what are you syncronizing the Master database when using Sitecore’s Publish command?

A

One or more identified publishing targets.

221
Q

You have been assigned the development task of setting the Insert Options for items in the content tree. According to Sitecore’s best practices, where should you establish Insert Options for items?

A

In the Standard Values of an item template.

222
Q

Which statement describes the difference between layouts and components?

A

The layout provides the base structure for a given delivery channel (it’s a scaffolding of the page), while components are smaller structure items added to the Presentation Details.

223
Q

What is the primary function of the Layout Service?

A

To provide structured data about Sitecore-based pages, including components and their associated content.

224
Q

When using Sitecore Content Serialization, what is the Sitecore.json file in your development solution?

A

The configuration file for global development plugins and module locations.

225
Q

What will happen if you don’t add the hostnames of your Sitecore environment to your Windows hosts file?

A

You will not be able to access the Sitecore environment via IP address in a browser.

226
Q

Name the five official Sitecore Documentation Resources and their purpose.

A
  • Sitecore Developer Network: Download PDF documentation for Sitecore 7.5 and earlier (shut down in 2019)
  • Sitecore Documentation: New documentation site (doc.sitecore.com)
  • Sitecore Developer Portal: Enhance developer experience (developers.sitecore.com)
  • Sitecore Knowledge Base: Knowledge Base and support, patches etc. (support.sitecore.com)
  • Sitecore Training and Certification (learning.sitecore.com)
  • YT Channel Discover Sitecore (youtube.com/DiscoverSitecore)
  • Twitter (twitter.com/WeAreSitecore)
227
Q

What is the name of the feature that makes Web Content Management possible in Sitecore?

A

Experience Management (xManagement)

228
Q

What do you need to take full advantage of the Sitecore Experience Platform?

A
  • Experience Management (xManagement)
  • Experience Database
229
Q

What is the primary location for all the digital assets in your solution?

A

Media Library

230
Q

What is the name of the component architecture guideline of Sitecore?

A

Helix

231
Q

Which of these editors can be used to modify an image in Sitecore?

A
  • Content Editor
  • Image Editor
  • Experience Editor
232
Q

What are the Developer-focused features added in Sitecore 10?

A
  • Sitecore with containers
  • Sitecore Content Serialization
  • Sitecore ASP.NET Core Rendering SDK
233
Q

What are the different options for Sitecore serialization introduced in Sitecore 10?

A
  • Sitecore Content Serialization by CLI
  • Sitecore Content Serialization using Visual Studio Plug In
234
Q

What are the benefits of Developer-focused features added in Sitecore 10?

A
  • Increased developer productivity (development is faster)
  • Lower cost of ownership
  • Faster onboarding for new developers
235
Q

List the benefits of participating in the Sitecore Community.

A
  • Complete sample modules for your use can be found on the Sitecore marketplace
  • 24/7 help from community members, including Sitecore
  • While actively contributing to the Sitecore Community you can become a Sitecore MVP, which gives related benefits
236
Q

Are all items pages in a Sitecore Project?

A

No, items that are pages have their Presentation Details set.

237
Q

Why does Sitecore recommend using a static HTML page as friendly response for a 500 error?

A

To protect your site from getting stuck in a loop if a major server issue occurs.
Note: If Sitecore provides the error page and the error comes from Sitecore there might be a loop that could take the site down.

238
Q

Which application from the Sitecore Launchpad is used to implement additional languages in Sitecore?

A

Control Panel

239
Q

How does Sitecore supports each of the CMS pillars (Data definition, Content and Presentation)?

A
  • Data definition: Templates
  • Content: Items
  • Presentation: Layouts and components
240
Q

What three pieces of information do you require to create an item?

A
  • Name
  • Template
  • Location (parent item)
241
Q

How do you define data structures within Sitecore?

A

By using templates.

242
Q

What is the purpose of template sections?

A

To group related fields together.

243
Q

What does template inheritance ensure?

A
  • Reusability
  • Mantainability
244
Q

All templates by default inherit from…

A

the Standard template.

245
Q

Two items based on the same template will have…

A

the same fields.

246
Q

You have Title field in Event template and Title field in Article template. What will you do to follow the recommended approach?

A

Create a base template and inherit on both.

247
Q

When you have two templates with a description field which is implemented with a rich text editor, but both fields use a different implementation of the rich text editor, can you move the field to a shared base template?

A

No, because the source value is different and applies different functionalities to the Rich Text editor.

248
Q

To provide a rich user experience, what are some recommended practices you should use when you create templates?

A
  • Provide default values
  • Use user friendly names and icons
  • Limit the use of Rich Text editors
249
Q

You’ve been hired to create a site for a company, and you must define the data structures in Sitecore to create items and content. What should you use to define data structures?

A

Templates

250
Q

Template B inherits from template A and template C inherits from template B. Which type of inheritance best explains the relationship between template A and C?

A

Indirect inheritance

251
Q

Only one parameters template can be assigned to a Component Definition item. What could you do if there are parameters in two or more templates that need to be assigned to a single Component Definition item?

A

Create a new template that inherits from the existing templates that have the required fields.

252
Q

What item setting needs to be specified for authors to be able to add content?

A

Insert Options

253
Q

What happens if you don’t set any Insert Options?

A

Only admins and privileged users will be able to create content.

254
Q

Where should you set Insert Options as a best practice?

A

Standard Values

255
Q

What is the function of the Data Source field of a template?

A

Designates where data comes from in the content tree.
Note: This doesn’t apply to Rich Text Editor fields.

256
Q

Why should you use a Multilist over a Droplist?

A

To provide the option for an author to select multiple data.

257
Q

How can you ensure that a field in a view model is still editable?

A

FieldRenderer.Render(Item, FieldName)

258
Q

@Html.Sitecore().Field() can’t be used for which field?

A

Complex fields (including Checkbox)

259
Q

Which of the following field types allows a Content Author to enter and store an HTML fragment?

A

Rich Text

260
Q

Which three field types listed below, when used with .Field HTML helper, can be rendered inline editable in the Experience Editor?

A
  • Single-line text
  • Image
  • Datetime
261
Q

How do you display the contents of a field in code?

A

@Html.Sitecore.Field(“FieldName”)

262
Q

What can you use to translate fields and Help texts in the Sitecore Client?

A

Sitecore Dictionary entries

263
Q

What happens if you use FieldRenderer.Render() method to render a Multilist field?

A

It would render the raw value of the field (pipe-delimited GUIDs).

264
Q

How would you render a Multilist field?

A

By retrieving its value in code and using it to create some output.

265
Q

What class would you use to retrieve the contents of a Treelist field?

A

Sitecore.Data.Fields.MultilistField

266
Q

What is the name of the popup window in the Experience Editor that can be used to edit fields that are not editable inline?

A

Field Editor

267
Q

How would you enable the use of a Field Editor?

A

By adding a Field Editor button to a toolbar.

268
Q

When you use the field helper, what do you do to ensure that a field can’t be editable inline?

A

Use the DisableWebEdit option.

269
Q

How can you edit Treelist in Experience Editor?

A

Use Edit frame and Add buttons in toolbar.

270
Q

Give an example of when you would use the DisableWebEdit parameter when rendering a field.

A

Rendering a field inside the <title> tag in the <head> of the HTML.</title>

271
Q

What happens if you use the same field name in a template that is already used in a parent template?

A

You will get two fields with the same name, which leads to confusion and becomes harder to manage later.

272
Q

Why are you unable to render a Multilist field to the page using .Render()?

A

It contains IDs and not readable content.

273
Q

What would you use the Field Source for?
- Image
- Rich Text
- Droplink

A
  • Image: Set the folder in the media library. It will open when selecting an image
  • Rich Text: Configuration of the toolbar and functionality of Rich Text Editor
  • Droplink: Set the items to be displayed as options
274
Q

What happens when you set the field to shared or unversioned?

A
  • Shared: There is a single version of data for all versions in all languages
  • Unversioned: There is one value of data per language
275
Q

What is the best common practice/location for content in the content tree that you want to reuse for multiple sites?

A

Place the shared content in a folder outside the structure of both sites in the content tree.

276
Q

What are the different Sitecore Server roles?

A
  • CD: Makes your web content available to your website contacts
  • CM: Enables content editors to create and publish content to a website
  • Processing: Extracts information from captured, raw analytics data and transforms it into a form suitable for use in reporting applications
  • Reporting: Fetches reporting data from various data sources (collection and reporting databases) to use in Sitecore reporting applications (Experience Analytics)
  • Standalone: A single Sitecore instance performing all server roles (Default Role)
277
Q

Name some of the attributes that can be configured in the site node for a website.

A
  • Name (name of the site)
  • Host Name (host name of the incoming URL)
  • Mode (enable/disable site)
  • RootPath (path to root item of the site)
  • StartItem (path to start item of the site)
  • Language (default content language for the site)
  • Database (default context database for the site)
  • RequireLogin (if true, login will be required to enter the site)
  • Domain (security domain of the site)
  • enableAnalytics (indicates if analytics is enabled on the site)
  • enableWebEdit (enable/disable Experience Editor)
278
Q

Which tag is used in Layers.config file to define the sequence of execution of configuration files?

A

<loadOrder>
Note: New, before configuration files were executed in alphabetical order.
</loadOrder>