Question 1
Question
What command would you use to create symlinks to LESS files for the Magento/luma theme in the fr_FR locale
bin/magento ??--locale ?? --theme Magento/luma? (Select 2)
Answer
-
dev:source-theme:deploy
-
fr_FR
-
cache:clean
-
cache:flush
Question 2
Question
Which of the main css files included in the default_head_blocks.xl file in a Magento theme? Select all that apply?
Answer
-
styles-m.css
-
styles-l.css
-
print.css
-
styles-s.css
-
main.css
-
screen.css
Question 3
Question
What does the template node do in the widgets.xml configuration file?
Answer
-
Filters which templates will be available for the widget in a specific container
-
Defines new templates for the module
-
Assign one template to a container so that template is automatically used if the widget is inside the specified container
-
Defines new layout for the module
Question 4
Question
Keep simplicity mind How would you configure a category to inherit design settings from its parent category?
Answer
-
"Use parent category settings" option in design tab
-
A category automatically inherits design settings from its parent
-
Use the catalog_category_view_id_[id]_children.xml layout handle
-
override category layout.xml
Question 5
Question
You are developing a new theme for your customer for his local regional language support, Which folders are required in a theme? Select all folders that are required.
Answer
-
/etc/
-
/media/
-
/registration.php
-
i18n/
-
web/
Question 6
Question
Which of the following is a Knockout virtual element?
Answer
-
<!-- ko something: something --><!-- /ko -->
-
<div data-bind="something: something">
-
<something args="something">
-
<div something="something">
Question 7
Question
What attributes are required on a <block> layout element in Magento 2.x?
Answer
-
class
-
before/after
-
cacheable
-
template
-
name
-
as
Question 8
Question
What command would you use to create a language pack from a csv file?
bin/magento ---- /absolute/path/to/file.csv [language_code]
Question 9
Question
What is the custom LESS directive added by Magento in order to implement a fallback system in the import mechanism?
Answer
-
//@magento_import
-
@magento_import
-
@mage_imports
-
//@mage_import
Question 10
Question
How can a group of child blocks be rendered in a template?
Answer
-
Using the getGroupChildNames() method and then rendering each block by name in a loop
-
Using the getGroupChildHtml() method
-
Using the getData('group_items') method in a foreach loop
-
Using the getData('group_items') method in a while loop
Question 11
Question
What Cms template directive would you use to output a URL?
Question 12
Question
What does the special variable @arguments do in a LESS mixin?
Answer
-
Takes the arguments that were passed into the mixin an renders them in that order
-
Defines additional arguments to be used in the mixin
-
Contains default arguments that are passed to all mixins by the framework
-
Initiate additional arguments to be used in the mixin
Question 13
Question
What command do you need to run when you create a new LESS file?
bin/magento ----
Question 14
Question
How would you initialize a JS component using a data-attribute?
<div ??? ='{"[Vendor_Module/js/path/to/file|alias]": {"[optionKey]": "[optionValue]"}}'>
Answer
-
data-mage-init
-
data-magento-init
-
data-mage-start
-
data-mage-initialize
Question 15
Question
What is the correct way to define a mixin in LESS?
Answer
-
.my-mixin(@arguments) {
...
}
-
@my-mixin($arguments) {
...
}
-
=my-mixin(@arguments) {
...
}
-
@mixin my-mixin($arguments) {
...
}
Question 16
Question
What are the available image types in etc/view.xml? Select 4 that apply
Answer
-
image
small_image
-
thumbnail
-
swatch_thumb
-
swatch_image
-
large_image
-
base_image
-
swatch_thumbnail
Question 17
Question
Select 4 layout handles that can be used to customize a product page's layout.
Answer
-
catalog_product_view_sku_[sku]
-
catalog_product_view_id_[id]
-
catalog_product_view_type_[type]
-
catalog_product_view
-
catalog_product_view_name_[name]
-
catalog_product_view_category_[category]
Question 18
Question
If you need to override a module layout, where would you put the layout file?
Answer
-
theme_dir/Vendor_Module/layout/override/base/name_of_layout.xml
-
theme_dir/Vendor_Module/layout/override/frontend/name_of_layout.xml
-
theme_dir/Vendor_Module/layout/overrides/frontend/name_of_layout.xml
-
theme_dir/Vendor_Module/layout/overrides/base/name_of_layout.xml
Question 19
Question
How can JavaScript on a page be configured using block arguments in layout XML?
<arguments>
<argument name="???" xsi:type="array">
<item name="???" xsi:type="array">
...
</item>
</argument>
</agrument>
Answer
-
jsLayout
-
components
-
block
-
page
-
arguments
Question 20
Question
Where are the Magento UI library LESS files found?
Answer
-
lib/web/css/source/lib
-
Magento_Ui/web/css/source/
-
Magento_Framework/web/css/source
-
Vandor/Magento/Framework/web/css/source
Question 21
Question
Where should overrides of existing LESS variables be added?
Answer
-
<theme_dir>/web/css/source/_theme.less
-
<theme_dir>/web/css/source/_variables.less
-
<theme_dir>/web/css/source/lib/_variables.less
-
<theme_dir>frontend//web/css/source/_variables.less
Question 22
Question
How do you create a new widget in your custom module that can be used in Cms content?
Answer
-
Configure the widget in etc/widgets.xml
-
Configure the widget in view/frontend/layout/widget.xml
-
Simply create a new class that implements \Magento\Widget\Block\BlockInterface and it will be registered as a widget automatically
-
Configure the widget in view/frontend/template/widget.phtml
Question 23
Question
Which of the following are valid Magento KnockoutJS bindings? (Select 3)
Answer
-
<!-- ko if: isVisible-->
<div class="someClass">
<!-- ko i18n: 'Some translatable message!'--><!-- /ko -->
<span data-bind="html: content"></span>
</div>
<!-- /ko -->
-
<if args="isVisible">
<div class="someClass">
<translate args="'Some translatable message!'"/>
<span html="content"></span>
</div>
</if>
-
<div class="someClass" if="isVisible">
<span translate="'Some translatable message!'"></span>
<span html="content"></span>
</div>
-
<div class="someClass" data-bind="if: isVisible">
<span data-bind="translate: 'Some translatable message!'"></span>
<span html="content"></span>
</div>
-
<div class="someClass" if="isVisible">
<translate args="'Some translatable message!'"/>
<html args="content"></html>
</div>
Question 24
Question
How can you call jQuery UI Widget methods?
Answer
-
$(‘.element-selector’).nameOfWidget(’nameOfMethod’);
-
$(‘.element-selector’).nameOfWidget.nameOfMethod();
-
$(‘.element-selector’).call(’nameOfMethod’);
-
nameOfWidget.nameOfMethod($('.element-selector'));
Question 25
Question
How would you initialize a JS component using the Magento script tag?
<script type=“???">
{
“[.element-selector]”: {
“[Vendor_Module/js/path/to/file|alias]”: {
“[optionKey]”: “[optionValue]"
}
}
}
</script>
Answer
-
script/x-magento-init
-
script/x-mage-init
-
js/x-magento-init
-
script/x-magento-fire
Question 26
Question
Given the following code, how would you call the following jQuery UI widget?
// Vendor_Module/js/name-of-widget.js
define([jquery], function ($) {
$.widget('vendor.myWidget', {
...
});
return $.vendor.myWidget;
}); (select 2)
Answer
-
require(['jquery', 'Vendor_Module/js/name-of-widget'], function ($, nameOfWidget) {
$('.element-selector').myWidget({...});
});
-
require(['jquery', 'Vendor_Module/js/name-of-widget'], function ($, nameOfWidget) {
nameOfWidget(...);
});
-
require(['jquery', 'Vendor_Module/js/name-of-widget'], function ($, nameOfWidget) {
$('.element-selector').nameOfWidget({...});
});
-
require(['jquery', 'Vendor_Module/js/name-of-widget'], function ($, nameOfWidget) {
myWidget(...);
});
Question 27
Question
How would you translate the phrase "Shopping Cart" in a UI Component?
<span data-bind="???: 'Shopping Cart''></span>
<translate args="'Shopping Cart'"></translate>
<span translate="'Shopping Cart'">
Question 28
Question
Which arguments are received by the function that is returned by a JS mixin?
Answer
-
target - The original object that was returned by the component extended by the mixin
-
additionalData - Additional data passed in the requirejs-config.js file
-
data - Data passed to the original object being extended by the mixin
-
attribute - Attribute passed to the original object being extended by the mixin
Question 29
Question
How do you bind a KO view model to a section of the DOM with the scope binding?
The ??? connects a UI component that is registered in the ??? with an element that has already been configured. This changes that element's KO binding scope to use the class that represents the specified UI component.
Answer
-
scope binding
-
uiRegistry
-
urlRegistry
-
dynamic binding