Sitecore 9 certification questions with complete answers graded A+
Sitecore 9 certification questions with complete answers graded A+ What is a WCMS? A web content management system is a platform that provides: - Website authoring - Collaboration - Administration tools What are the pillars of a WCMS 1. Data Definition: Basic data infrastructure for website content 2. Content: The actual data required to show the website 3. Presentation: The content in a format to be consumed (look and feel of the web pages) How are the WCMS pillars apply to Sitecore? 1. Data Definition: Templates = data schema 2. Content: Items, defined by templates and info in stored fields (in a tree structure) 3. Presentation: Layout & Components to transform content into desired format (HTML, JSON, XML, ...) What marketing functionalities are offered by Sitecore eXperience WCMS? 1. Analytics: Track visitors activity 2. Insights: Analyze the collected info 3. Decisions: targeted and personalized content 4. Automation: Individual conversation according to the visitor's online and offline behavior What are the technologies the Sitecore is based on? Sitecore is an ASP.net, you build your app wit VS and deploy it to IIS. It supports WebForms and MVC paradigms. How do you access the login screen? Add /sitecore to the base URL You will access the Launcepad which is the main screen to access Sitecore applications base on your access level. What are the main editing applications? 1. Experience editor: an authoring tool for non-technical users. Shows the content as live website visitors see it. 2. Content Editor: Provides more command and more functionality compared to experience editor and displays the content in the stored format. etc: Media Library (Only-media-item content editor) & Workbox What would you use the Field Source for in Image Rich Text, and Droplink fields?,Image: Set the folder in the Media Library Rich Text: toolbar and Rich Text Editor configuration Droplink: the item ID of the parent item of the Items to be displayed What is the name of the template that all templates inherit from? Standard Template What field type would you use for formatted HTML? Rich Text Field In content editor How do you inherit from a base template?,Select the template and go to build tab. When build tab is selected, a new section called Builder/Options appears in the ribbon. What is the convention for naming abstract templates? _BaseTemplateName How the content of the website settings, and configurations are stored?,They are stored as items. What is the base part of all content and how are they stored? They are all stored under /sitecore/conent in a tree structure How can you identify items? Using their ID property. Items might have the same path as it is possible to have two items with the same name in the same location in the tree. Which one of Content Editor and Experience Editor handles locking automatically? Content Editor: Manual locking and unlocking Experience Editor: Automatical ... What are the 6 sections of the Sitecore tree? Content: all website contents Forms: web forms Layout: presentation-related item Media Library: Digital Assets System: Configurations Templates: Definition of the system and your templates (do not modify system templates) Admins can use Insert from template to add a template. What should be specified to create a new item? Location, template, and name. What are Insert Options? The options of templates users have for inserting content. It is a property of an item and defines the types of items that user can create as the child of that item. Insert Options can be also calculated automatically or based on user access. How to lock and unlock an item as a non-admin user? Click on Edit button, do the editing and then click Edit again to unlock it. What is a Standard Value? - An item named __Standard Values - Placed as the child of the template it is based on - Used to define default values and settings for all items based on that template - It is a value to use when the field value is null Regarding __Standard Values and template inheritance how the value of a field is calculated?,1. If the field has a value, it will be set 2. If not, then the value of the same field in __Standard Values of the Template is used if it is not null. 3. If not, then the value of the base template will be check and this scalation continuous a value is found 4. If not, then it is set to null What is an Initial Value? Both default values and initial values are defined by Standard Values but: 1. Initial values are only set when the field is created (if you set a Standard Value field to an initial value, it will not affect created fields) 2. They defined by these $ token: $Name, $Date, and $Now What are $Name $Date, and $Now?,$Name: name of the content item $Date: current date $Now: date and time at the moment How to set the value of a field to null? Use the Reset button. Null and empty are not the same in the Sitecore. In Content Editor How do you set Insert Options?,Configuration/Assign button when the item is selected What are the field versioning options? Versioned: default, the field is capable of having different data for each version and each language Unversioned: Only one single copy of data exists for each language. Shared: One single version in all languages. How do you set the value of an item to null? Configuration/Reset What are the 3 main Sitecore DBs and what are for? 1. Core: User UI definition and membership configuration 2. Master: All lang. and versions data is stored here 3. Web: Content used for live website All of these DBs use items to store data. What is Publishing? The process of copying from Master to Web DB. The response to a web request is made from the content on the Web database and unless a publishing operation takes place, whatever changes you make on the Master DB will not affect the website. In what condition it makes sense to configure Sitecore to bypass the Web DB and use Master to respond to webpage requests? How do you do it? In the developing phase. How to access the Core DB from client UI? In Sitecore Experience Platform (Launchpad), click on Desktop and change the database at the bottom right corner to Core. Then from the Sitecore button (like windows button) click on the Content Editor. How do you add a new language? From LaunchpadControl PanelAdd a new language What are the detail levels of publishing? You can publish an item or the whole site or one language. It can be scheduled or done ad-hoc and needs no developer involvement. Note: usually it is a good idea to publish the related items. Can you have an item appear on the website for a period of time using publishing restrictions? No. A publish operation needs to take place at the beginning and also the end of that period. There are free modules that set that up but Sitecore does not so. How do you set publishing restrictions? Content Editor Publish Change You can control publishability of items based on versions or for all languages and versions by item tab. Why would you need to run a full republish? Theoretically, you should not need to do this as a user. What are Sitecore Layouts? .cshtml files registered with Sitecore in Sitecore/Layout/Layout of the tree and assigned in the presentation detail of an item. How items are presented to the end user? If there is a matching item with incoming web request, the presentation detail of that item is used to render the item (into Html) How do you assign the presentation details of an item? CE: Select the item and go to PresentationDetails. You can pick from previously created layouts. SR: Right click/ Task/ Edit(?Assign) design ... What field can be edited in the Experienced Editor? Note: Experience Editor is closer to the actual look of the website. - Text fields: single, multi, rich - Image - Date / Datetime - General Link How do you refer an I in a layout? @Html.Sitecore().Field(fieldname) How to refer a field in another item in a layout? @Html.Sitecore().Field(fieldname, anItemObject) What are the extra parameters you can provide in @Html.Sitecore().Field()? They should be provided through an anonymous object and they are: @Html.Sitecore().Field(fieldname, new { DisableWebEdit = true, EnclosingTag=, Format=, @class=}) What is a View Rendering Component? It is a Razor .cshtml file equivalent of MVC view. Sitecore creates a Controler and Model for it. How to refer to a component in layout statically? @Html.Sitecore().Rendering(path or id) What is the Layout? It is the scaffolding of the page What is a Component? Part of the page that can be reused in other pages too. (:|) What are the Presentation Details? The property of each item that stores the information Sitecore requires to make up a page response. Are statically bind components editable in Content Editor mode? No What is dynamic binding? Sitecore assigning components onto the page at request time. What are the benefits of dynamic binding? - It gives editors the ability to change the presentation of the page - It also powers advanced marketing features like personalization on content testing - and permits a much better component reuse in comparison with statically binding (in code) What are the elements required for dynamic binding? 1. Add a placeholder markup where you want to be able to add something dynamically @Html.Sitecore().Placeholder(Key) 2. Add a mapping between component and placeholder on the Presentation Details Just remember that placeholder key must be unique as it is used in Presentation Detail for binding to a component (Controls Tab) OK. I will. How do you let normal users change the component of a placeholder? By creating a Placeholder Setting Item What are the 2 key fields of a Placeholder Setting? 1. Placeholder Key 2. Allowed Controls: if not set, users can set any component What is the difference between the Final and Shared options of Context EditorPresentationLayout Final overrides the layout of that version and Shared overrides all versions in all languages. How do you loop through all item children of the item X? @foreach (Sitecore.Data.Items.Item item in Model.Item.Children[X]){ } How do you get the URL of an item? @Sitecore.Links.LinkManager.GetItemUrl(Item) How do you assign the data source of a component? In the Content Editor and Designing mood, click on the item and click at Add Associated Content Why do we use the data source in components? To build a more flexible and reusable component because data source is determined by users. Can you use placeholders inside of placeholders? Not directly. However, you can have components inside a placeholder that define other placeholders. It is referred to as nested placeholders. Why it is a good idea to avoid Rich Text Box as much as possible? It breaks the separation of content and presentation. What happens when you request a page that has no layout defined in the presentation details? Sitecore shows a layout not found page. What must be the value of DisableWebEdit for a title tag in head of an html file? It should be false as it is not editable. What are the 3 component of Sitecore? 1. xManagement: It is the Web Content Management of Sitecore. (Data Definitions, Content & Presentation) 2. xConnect: A set of services that sit between xDB and xManagement or any client interface that wants to read or write data to xDB. Provides services to collect and search data stored in xDB. 3. xDB: Adds integrated marketing and analytics capabilities. It is the collection of services and storage roles that store and process experience data. You can configure servers to perform dedicated tasks such as Content Delivery (CD) or Content Management (CM). This can improve performance and scalability. You can add more servers to a specific role, like 3 servers for CD.,OK. I will remember. What is the Anonymous user account in Core DB for? For any visitor to the site who is not logged in to an external domain role. extranetanonymous — a user who is viewing the free to access parts of a website. What are the benefits of using the standalone publishing service (Starting with Sitecore 8.2) The majority of this service code runs on ASP.NET Core. If you expect a large number of items in your production env. or your servers are geo-distributed, setting up this service will give you noticeable performance improvements. What is a session state? The information collected from user behavior visited pages, submitted data, ect, is collected in session state. When the session is expired, the info is pushed through xConnect to the collection service to be stored. Processing server aggregates and reduces and index the data. This info can be queried through xConnect from the Reporting Server. How can you copy the application files in VS project to an existing Sitecore installation webroot? 1. Batch script 2. MSDeploy 3. VS Publish/Deploy (easiest): Build Menu / Context Menu on the project . . How do you publish a single file? It is used for files that do not need compilation such as java script or css files. Use Context Menu of the file or Keyboard Shortcut: (Alt+ Alt+P) Right Click on the file or folder - Start Folder Sync - Sync Now (this is available if Sitecore Rocks extension is installed) ... Remember to check Helix documentation and sample Habitat project. Sure. How do you render a field of an item that is not part of the Context of the current URL? 1. get the database object: var database = Sitecore.Context.Database 2. get the item: var item = database.GetItem(new Sitecore.Data.ID(Item ID)) ... 3. get the value of the field: var output = FieldRenderer.Render(item Field Name, params) What is the difference between the ContextItem and DataSourceItem? The ContextItem mapped to the URL and contains the Presentation Details. The DataSourceItem is a property, developers and editors can assign to any component. How do you get DataSourceItem in code? RenderingContext.Current.Rendering.Item What is the default value of RenderingContext.Current.Rendering.Item? The same as: RenderingContext.Current.ContextItem which is the ContextItem What is Open Properties after Add property for? Opens the property dialog of the component when the user adds the component to a placeholder. How do you restrict the options for DataSourceItem? Define the Template of the Data Source in addition to Data Source location. What are DynamicPlaceholders used for? 1. Generating unique placeholder key 2. Generating multiple placeholders used with specially named parameters like column 3. Allow injecting the code like that needs to encapsulate the injected component. * Use TagBuilder object in a lambda function passed to DynamicPlaceHolder What is the template that defines the Component Properties Dialog Box? Standard Rendering Parameters Template You can replace or extend fields in this template to show your own field. What it the use of Custom Rendering Parameters Template? To strictly control the user experience. So you are not likely to let users enter free text into those fields. Lists or Checkboxes are the most common field types in this templates. Remember that you have to retrieve the item by using the ID returned by the field if it is not storing the raw text of the value. Parameters Template field of a component allows only one template. How do assign more templates to this field? You cannot. You can assign a template that inherited from multiple base ones. What is the Repository List Template good for? Define valid values for a field like colors that are allowed to be used in a Rendering Parameters Template field. What is Rendering Parameters Template for? Provides a list of value-items to the authors and also is needed as they do not have access to component definition item. What are the benefits of using Rendering Parameter Template for your component? 1. Authors do not have to remember parameters name and values 2. They restricted to those values 3. Authors with limited access can not see additional parameters * if your field is not storing the raw text of values, you have to code to retrieve the values by ID it those items Drop list stores the name of the items while Droplinks store their IDs What are Compatible Components? Components that can be replace with another component (without removing one and adding another one) because: They are presenting the same data {robbish from the course} 1. They have a similar but slightly different presentation 2. Sharing data source and parameters 3. Have page location in common What are the configuration limits of Compatible Components? Are configured on Component Definition item. It is not a two-way setting. They should be in Allowed Controls field on the placeholder setting. [Just in case you see this in exam] Where does Sitecore store the rendering parameters? Any Sitecore field What is canonical URL? A canonical link element is an HTML element that helps webmasters prevent duplicate content issues in search engine optimization by specifying the canonical or preferred version of a web page. How to handle redirect with Sitecore? 1. Third Party Module 2. Custom code by overriding the LinkManager and ItemResolver 3. IIS Redirect A Canonical Link needs to be absolute OK Mention 3 methods to filter items for navigation? 1. Set exclude from navigation to 1 and use that in LINQ query to filter them out: var items = RenderingContext.Current.ContextItem.GetChildern().Where(item = item[exclude from navigation]) != 1) 2. Filter all items that inherit from a particular template 3. Have fields storing all the items that should be shown ... How do you make Sitecore to translate URLs? By setting the LinkManager to use the item's DisplayName Where Sitecore's config is stored? g + a cumulative effect of files in App_Config folder. Why the order of config files matter and how it is determined? It matters as on config file might override a setting set by another. Files are grouped into layers and each layer is mapped to a folder inApp_Config folder. g defines the order that the layers are read. What are the 3 base config files that Sitecore reads at startup? 1. g2. ConnectionSg 3. g What are the two namespaces used in Patch Configuration (a.k.a Include) Files? They let you modify the existing XML configuration in section of the g. 1. Patch - 2. Set - What is the difference between Patch and Set namespaces in Include Files Each Include file is a standard config with additional namespaces. When Sitecore reads the content of a patch, it matches the elements with the existing configuration. If the element is not found it is added to the configuration. Existing elements are located and can be modified with set or attribute. Patch namespace defines a syntax for deleting elements and modifying attributes. Set namespace does the same with simpler syntax. Only files with .config extinction are read for configuration OK How do you see the compiled config? 1. go to http://[website]/sitecore/admin/ 2. Sitecore Rocks: Right click on the site Tools Open Expanded g What are Sitecore Server Roles? 1. Content Management 2. Content Delivery 3. Processing 4. Reporting What is a package? Created by developers through package designer or Sitecore Rocks. Zip file used by Sitecore installation wizard. Contains serialized Sitecore items Can contain both code and configuration files Used to transfer items and files between Sitecore instances What is a Module? Most modules are packages. Used to extend functionality. Found on the Marketplace Update package? Contains changes to your Sitecore instance, item, and files. How do you create an anti-package? Using Site Rocks. It must be done before the package is installed What is the difference between installing packages using Sitecore Rocks and Sitecore Client Interface? Sitecore Rocks does not prompt about any conflict. Make a backup before installing a package. 1. Sitecore.Context.User 2. Sitecore.Context.Database 3. Sitecore.Context.Language 4. Sitecore.Context.Device 5. Sitecore.Context.Site 1. Defaulted as Anonymous 2. Web / Core / Master 3. 4. 5. EditFrame? Allows developers to define a region of the page that will react to clicking by showing a toolbar. EditFrames in the Experience Editor is a feature that you can use to give users front-end access to fields that are not directly accessible, either because they are not visible or they are of a type that is not directly front-end editable. Where do you need to add a button definition item to add a new edit frame button? CoreContentApplicationsWebEditEdit Frame Buttons In what namespace Html.EditFrame is? Sitecore.MVC.Extentions What is the raw value of a field? The value that is stored in the DB When do you render the row value of a field to the website? Never Non-Editable Field? A complex field that cannot be rendered directly to the Experience Editor and cannot be editable inline. Field Editor? Pop-up window available in the Experienced Editor that allows authors to edit complex field. Edit frame button? A button type that can be added to any toolbar in Experience Editor. It displays a Field Editor. What does this do: FieldRenderer.Render(item ContentHeading),returns an strings that can be used to create a HtmlString. FieldRenderer makes fields editable in Experience Editor. It is in Sitecore.Web.UI.WebControls namespace What does this do: @Html.Sitecore().Rendering(/sitecore/layout/Renderings/TAC/Events/EventIntro) Binds a component statically in your layout. This line will be replaced with whatever that component renders to. What is this: @Html.Sitecore().Placeholder(pageSide) The helper method that creates a place holder named pageSide What is a placeholder override? When you override the placeholder setting of a specific page. Let's say all pages have the same layout which has a main placeholder and you have a page like Home that unlike others should just have a specific component. So you override its setting to avoid authors to remove it. How do you override a placeholder setting? In Experience Editor Designing Mode, go to the parent component if required and click on Edit the placeholder setting and Create new settings. Choose a new name, parent item as location and remove Editable check. In Experience Editor What does the component selection button on the toolbar do?,It lets you select any item in the hierarchy of items. Remember, HomeContentfeaturesfeatureRow In Experience Editor item toolbar What does the Add Associated Content do?,Selects the content that you want to associate with the rendering and use as the data source. In Experience Editor item toolbar What does the MoreEdit Experience EditorOptions do?,Setting data source template restrictions. Click on that and use Insert Link at Data Source Template field to set that. Then authors can only select data sources that are that specific template. How index configuration is done? Through .config include files What are the two main task in indexing? 1. Define w hat get indexed 2. Specify how it should be indexed What is the unit of content in Sitecore? item What is the unit of content in indexes? document What is the responsibility of the index analyzer? Is responsible for looking at the content to be indexed (field value) an splitting into smaller bits called token, discarding unnecessary tokens and transforming them appropriately. What is the responsibility of the vectorizer? Store position of tokens in context StorageType = True A copy of the content is stored with the index IComputedIndexField Is used to provide a value for the field to be indexed. Ex. MultiList stores GUID and there is no use indexing IDs. This interface is used to convert those values to the content text of each item. Where do you go to view indexes info and choose indexes to rebuild? Launch pad Control Panel Indexing Manager What are the 3 default content indexes? Sitecore_core_index Sitecore_master_index Sitecore_web_index How do you show developers tab in the Content Editor? Right-click on the ribbon and select developer from the list What is the recommended number of children for each item? 100
Geschreven voor
- Instelling
- Sitecore
- Vak
- Sitecore
Documentinformatie
- Geüpload op
- 13 februari 2023
- Aantal pagina's
- 17
- Geschreven in
- 2022/2023
- Type
- Tentamen (uitwerkingen)
- Bevat
- Vragen en antwoorden
Onderwerpen
-
sitecore 9 certification questions with complete answers graded a
-
what is a wcms a web content management system is a platform that provides website authoring collaboration administration too
Ook beschikbaar in voordeelbundel