1. Subject: Templating - Advanced
    In a template script, how can you access the current used template definition?
    A - ${def} object
    B - ${model} object
    C - ${content} object
    D - ${template} object
    Correct answer: A

  2. Subject: Templating - Advanced
    YAML include is very helpful when reusing definitions, such as a field definition, saving developers from re-writing lengthy codes or having to copy and paste numerous lines.
    When using Magnolia YAML include, which of the following guidelines should you be specially aware of?

    A - It will only work if the same kind of definitions are included.
    B - The path is prefixed with the Magnolia specific !include directive.
    C - The absolute path to the file to be included starts with /<module-name>.
    D - The file to be included doesn't have be of the same type as long as they are YAML configurations.
    Correct answer: A

  3. Subject: Templating - Advanced
    You have just used an MTK Text Image component. You quickly realized that the author doesn't need all the fields that come with it.

      footer:
        availableComponents:
          mtkTextImage:
            id: mtk:components/textImage

    What is a way to fix this without creating a new component template?
    A - Decorate the MTK definition.
    B - Override the MTK definition.
    C - Through a "hotfix". Edit resources on live instance.
    D - Include MTK definition.
    Correct answer: A

  4. Subject: Templating - Advanced
    You have just used an MTK Text Image component. You quickly realized that the author doesn't need all the fields that come with it.

      footer:
        availableComponents:
          mtkTextImage:
            id: mtk:components/textImage

    What is a way to fix this without changing the original component template?
    A - Decorate the MTK definition.
    B - Through a "hotfix". Edit resources on live instance.
    C - Override the MTK definition.
    D - Include MTK definition.
    Correct answer: A, B

  5. Subject: Templating - Advanced
    You are tasked to add a navigation to the page where it uses the components of the main area.
    To get the components, it must loop over the components of the area and list the components available. Another similar instance is the footer area:

    To loop over the components of the main area, which directive can you use?
    A - list directive
    B - assign directive
    C - if else directives
    D - for directive
    Correct answer: A

  6. Subject: Templating - Advanced
    The code below is repetitively used in several components that allow image linking.

    [#if content.imageLink?has_content]
        [#assign assetLink = damfn.getAssetLink(content.imageLink, "small")!]
        [#if assetLink?has_content]
            <div class="${divClassImage}"> 
                <img class="img-responsive img-circle center-block" src="${assetLink}" alt="">
            </div>
        [/#if]
    [/#if]

    How will you resolve this asset code redundancy?
    A - By using a function and include it in a script.
    B - By re-using the same dialog.
    C - There is no way around it, one must copy and paste the code every single time.
    D - By making use of the Image MTK component.
    Correct answer: A

  7. Subject: Templating - Advanced
    What is a model class in a template?
    A - A model is a Java class or Groovy script that holds the business logic of the template.
    B - A model is a Java class that references the current renderer to use.
    C - A model is a Java class or Groovy script that defines the rendering process of the template.
    Correct answer: A

  8. Subject: Templating - Advanced
    What does a model class in a template help you with?
    A - Access APIs from Magnolia and third party systems and provides data to the template script 
    B - Implement an MDC app with Magnolia
    C - Change the filtering chain
    D - Speed up the rendering cycle
    Correct answer: A

  9. Subject: Templating - Advanced
    One of the following statements about model classes is NOT TRUE.
    Which statement is FALSE?
    A - Using the model means that business logic cannot be changed without changing the render logic.
    B - A model class can be assigned to each page, area or component definition.
    C - The model provides business logic that cannot be achieved by FreeMarker or other templating languages.
    Correct answer: A

  10. Subject: Templating - Advanced
    To be able to edit content of a page, an author should choose the Pages App.
    Which workspace will the author be operating on using the Pages App?
    A - website
    B - resources
    C - pages
    D - config
    Correct answer: A

  11. Subject: Templating - Advanced
    Try to read and understand the script below and identify if it is a valid template script in Magnolia or not.

    <!DOCTYPE html> <html lang="en"> 
    <head>
    [@cms.page /]
    [@cms.area name="htmlHeader"/] 
    </head>
     
    <body>
     
    [@cms.area name="navigation"/]
    [@cms.area name="pageHeader" /]
    [@cms.area name="main" /]
    [@cms.area name="footer"/]
    [@cms.area name="endPageJsScripts"/]
     
    </body>
    </html>

    A - Valid
    B - Invalid
    Correct answer: A

  12. Subject: Templating - Advanced
    A site definition contains configuration values that will be applied to a Magnolia website.
    One of the important elements within the site definition is the prototype.
    What is a template prototype in Magnolia?
    A - Template prototype serves like a master page template where everything configured is applied to all page templates.
    B - A template prototype works as a mock-up page template where all configured templates can be used.
    C - Template prototype is like a draft page in Magnolia, allowing authors to plan out and visualize the layout of the page.
    D - A template prototype is a merging tool that combines repeating YAML configurations.
    Correct answer: A

  13. Subject: Templating - Advanced
    A site definition contains configuration values that will be applied to a Magnolia website.
    One of the important elements within the site definition is the prototype.
    Only one of the following statements is CORRECT about prototype. Identify the TRUE statement.
    A - Templates prototype is the super configuration of all page templates. Anything defined in the prototype will be applied to all page definitions on render.
    B - A prototype is the super configuration of all area definitions. Anything defined in the prototype will be applied to all components on render.
    C - A prototype is simply an early sample, model, or release of a your website for testing purposes.
    Correct answer: A

  14. Subject: Templating - Advanced
    In Magnolia 5.4.8+ configuring a prototype in YAML is already supported. While it is not possible to configure a site completely by YAML, the prototype itself can be defined with YAML.
    Which is NOT a benefit of using a protoype?
    A - Having a prototype means having a page template with sample content. All the author needs to do is edit content or duplicate the page.
    B - Having a prototype ensures that there is uniformity across templates.
    C - Having a prototype helps you as a developer to avoid repeating and duplicating configuration.
    D - Having a prototype makes the process of creating similar templates faster.
    Correct answer: A

  15. Subject: Templating - Advanced
    What is the purpose of a theme?
    A - It defines and provides all design relevant resources to use in a website.
    B - It is a specialized module providing all design relevant resources for the Admin Central.
    C - It defines a use case implemented by a page.
    D - It defines a use case implemented by an app.
    Correct answer: A

  16. Subject: Templating - Advanced
    What is the purpose of a theme configuration?
    A - It is a configuration referenced by a Site Definition, defining all design relevant resources for a website.
    B - It is a configuration referenced by a Page Definition, defining all design relevant resources for this page.
    C - It is a configuration referenced by a Component Definition, defining all design relevant resources for this component.
    D - It is a configuration defining all design relevant resources for the Admin Central (admin central branding).
    Correct answer: A

  17. Subject: Templating - Advanced
    Which of the following statements doesn't hold true about Theme Configuration in Light Development?
    A - Configuring a theme is mandatory in order for the resources files to be loaded into Magnolia.
    B - Themes can be configured in any light module as top-level entity themes.
    C - A theme is assigned to a site via its Site Definition.
    D - There are three possible configuration entities within a theme: imaging, cssFiles and jsFiles.
    Correct answer: A

  18. Subject: Templating - Advanced
    Scenario: You have uploaded high resolution images into the DAM for your project. After reviewing the specifications, you find out that you would be using these images in varying sizes for the pages.
    How will you resize the images without having to upload multiple size variations of the images?
    A -  By using a theme, specifically its image resizing functionality.
    B -  Magnolia does not support image resizing therefore CSS manipulation must be done.
    C -  By using the resize functionality of the Assets App.
    D -  Through component personalization.
    Correct answer: A

  19. Subject: Templating - Advanced
    How do you register themes?
    A - In any module, since themes can now be registered in any module.
    B - In the Resource Files App
    C - In the Themes App
    D - In the template script along with the CSS and JS references.
    Correct answer: A

  20. Subject: Templating - Advanced
    Scenario: You are working in the resources app. You have just hot-fixed a template script originally stored in a Java classpath. After doing so, you notice the origin has changed.
    Where is the file stored now after the hot-fix?
    A - JCR
    B - File System
    C - Config
    D - Java Classpath
    Correct answer: A

  21. Subject: Templating - Advanced
    What is the main difference between Content i18n and System i18n?
    A - Content i18n enables authors to enter content in different languages while System i18n enables the Magnolia user to use the system in his own preferred language.
    B - Content i18n allows authors to manage content while System i18n enables system moderators to control system settings.
    C - Content i18n is for content personalization while System i18n is for back-end configurations.
    D - Content i18n deals with content check while System i18n deals with the language the content will be served.
    Correct answer: A

  22. Subject: Templating - Advanced
    Scenario: A Magnolia user asked support from you. His complaint is that his AdminCentral is displaying actions and labels in a different language. He sent you this image:

    What exactly happened and how will you fix it?
    A - The user might have accidentally changed his language preferences. To solve this, I'll go to 'Edit user profile' > Preferences.
    B - The developer had erroneously set the default language of AdminCentral to Chinese. To fix this, I'll go to Configuration App > System Language.
    C - The user's Magnolia bundle is in Chinese language. His bundle should be replaced with the bundle of his preferred language.
    D - Somebody from the same group must've changed the language. The user must contact the System Administrator to revert the language settings.
    Correct answer: A

  23. Subject: Templating - Advanced
    Scenario: You have added message keys in 'module-website-project-light-module_de.properties' while implementing System i18n.
    When the author sets his preferred language accordingly, which of the following will be an example result?
    A -
    B -
    C -
    Correct answer: A

  24. Subject: Templating - Advanced
    Scenario: You have been handed over a project where the author can enter content in several languages, like this:

    You have been tasked to add another language, Italian. Which internationalization enables you to do this?
    A - Content i18n
    B - System i18n
    C - Message bundles
    D - translation.com
    Correct answer: A

  25. Subject: Site Development - Site Definition
    Scenario: One of the requirements of the website is to be able to serve in two languages: English and German.
    As a developer, how will you configure Magnolia's Internationalization (i18n) concept for the website?
    A - Configure and enable the two languages in the Site Definition of the website /i18n/locales.
    B - Create two child nodes under the root node named English and German, content to be translated manually by the author.
    C - Create a text file with all the possible key terms translated to German, e.g. Save = Speichern and configure in Site Definition /i18n/locales/location : info.magnolia.cms.i18n.translations.txt
    Correct answer: A

  

  • No labels