HubSpot CMS for Developers Certification Exam Answers
This certification help web developers learn how to build and manage websites on the HubSpot CMS.
Covers tools and workflows developers use to build a variety of web assets in the HubSpot CMS.
Exam:
- There are 40 questions.
- The exam takes about 40 minutes to complete.
- You must answer 30 questions correctly to pass.
- You must wait 12 hours between attempts.
- You have 3 hours to complete the exam.
Which of the following is NOT a feature of the HubSpot CMS of special interest to web developers?
- Preconfigured solutions to common tasks
- Security and updates
- In-app and local dev workflows
- The ability to add PHP anywhere in a template
What does the hubspot.config.yml file do?
- Configures field names for a theme
- Configures the relationship between local files and HubSpot CMS accounts including authentication
- Configures account settings like system templates and navigation trees
- Configures the relationship between a HubSpot account and the yaml preprocessor
Which of the following is possible with the command line tools?
- Creating a new template
- Watching for changes in local files and uploading on save
- Creating a new module
- All of the above
Which of the following statements about templates is NOT TRUE?
- Templates allow content creators to do their job without having to collaborate with designers and developers during every step of creating web pages.
- Templates have a big effect on the editing experience for content creators.
- Templates can only be used to create one live page in the HubSpot CMS.
- Templates are an important intersection point for developers and content editors.
Which of the following statements about templates is TRUE?
- Templates must be purchased from a 3rd party vendor.
- There are no requirements for header and footer content.
- Comments are not allowed in templates because they look messy.
- Templates use HubL to create editable areas of pages.
Which of the following statements about drag and drop areas is TRUE?
- The dnd_area tag is all that is needed for basic drag and drop functionality in the page editor.
- Drag and drop areas allow developers to drag scripts into their pages for rapid prototyping with handlebars.
- Drag and drop areas must contain at least one rich text area.
- The dnd_area tag is a special HubL tag that editors can copy and paste into the file manager to edit photos.
Choose all that apply. Which of the following are always good strategies for building templates?
- Keeping content editors front of mind at all times and optimizing their editing experience.
- Building in appropriate guardrails to help content editors quickly build pages and reduce the likelihood of errors and bugs.
- Looking for ways to keep your codebase DRY and avoid repeated code that is prone to bugs.
- Creating lots of blank templates that require content editors to build everything from scratch.
Which of the following statements about a healthy codebase is TRUE?
- Repeating the same code throughout your codebase is usually preferable to abstracting and reusing code because it’s easier for novice developers to understand.
- Developers using the HubSpot CMS are discouraged from reusing snippets of code because the cost of the CMS is prorated by file size and we would prefer that your codebase is extremely large.
- DRY is an acronym that stands for Do Right Yesterday. It means that finishing a project early is better than taking extra time to make a codebase maintainable.
- Reducing instances of repeated code helps to keep your codebase tidy and bug free.
Which statement about repeating module fields is FALSE?
- Repeating fields give editors the ability to add or subtract instances of fields.
- The HubL used to implement repeating fields uses a loop.
- Repeating fields and flexible columns are the same thing.
- It is also possible to use repeating field groups.
Which of the following statements about HubSpot CMS themes is TRUE?
- Themes are a package of assets that help keep a website consistent.
- Themes are only relevant for very large websites.
- Themes should only contain 5 templates.
- Themes cannot contain modules.
Which file in a theme controls the global fields that content editors can edit?
- fields.xml
- theme.json
- fields.json
- That depends on the operating system the content editor is using.
Choose all that apply. Which of the following options is configured in the theme.json file?
- Name of the theme
- Link to a preview image for the theme
- List of account users who cannot use the theme
Which of the following statements about global partials is NOT TRUE?
- Global partials are a good way to keep your codebase DRY.
- Global partials can only be used on one template in a theme.
- Global partials can be used to give content editors access to content that appears in more than one template.
- Global partials can contain content that is not editable in the content editor.
Which of the following statements about theme fields is NOT TRUE?
- Theme fields can give editors access to CSS properties.
- Developers can use theme fields to make a theme extremely flexible.
- Developers don’t need to worry about how theme fields might be used by editors because theme fields can’t be used to make a website inconsistent or difficult to navigate.
- Theme fields can affect the appearance of an entire website.
Which of the following statements about theme modules is TRUE?
- Theme modules should never contain styles.
- Theme modules are a great way to keep sites stylistically consistent.
- Theme modules need to contain a special JavaScript statement that makes them appear in the theme module section of the content editor.
- Themes that use fields should not need modules.
- True
- False
- An expression test
- A Loop
- The do tag
- This is not possible in HubL
===
Which CMS tool are developers most likely to spend the most time with?
- a – Editor
- b – File manager
- c – CRM
- d – Design manager
Which of the following statements about HubL and JavaScript is TRUE?
- a – HubL can be used in both the HTML + HubL and the JS sections of the module editor.
- b – HubL tags contain a “post_js_rendering” attribute so that you can pass JS data to HubL in modules.
- c – Module builders can choose between JavaScript and HubL to add module fields to their markup.
- d – JS written in the HTML + HubL section of the module editor will be repeated on a page for every instance of a module.
Which of the following is not included in HubL?
- a – Loops
- b – Macros
- c – Filters
- d – Classes
Which of the following statements about modules is FALSE?
- a – Modules can be used to maintain consistency in site functionality.
- b – Modules can be used to add consistency to website maintenance.
- c – Modules can be used to create a more consistent user experience for editors.
- d – None of the above.
Which of the following statements about blog templates is NOT true?
- a – Listing and post pages can be separate templates.
- b – Templates are connected to blogs in settings.
- c – Blog templates must contain an author profile and a full list of available topics.
- d – The blog content module contains listing and post HubL markup.
Which of the following statements about HubL module syntax is NOT TRUE?
- a – Basic module syntax is a single line statement.
- b – HubL modules use three curly braces to open and close tags.
- c – HubL modules can be added with a block syntax.
- d – HubL modules use parameters for required and optional module settings.
Which of the following statements about using HubL in blog listing templates is NOT true?
- a – Use a loop to add blog posts to the listing template.
- b – Author name is the only author data available in the listing conditional of a template.
- c – Conditionals can be used to add or subtract content from author and topic views.
- d – If you’re using one template for both the listing and post views, you’ll need a conditional to separate the markup for each view.
Which of the following statements about blog settings is TRUE?
- a – Content editors can assign any number of templates to individual blog posts by tag.
- b – It is not possible to assign separate templates for listing and post views in settings.
- c – Listing page post summaries can be enabled and disabled in settings.
- d – All blog settings can be overridden by HubL at the template level.
Which of the following statements about email templates is NOT true?
- a – CAN SPAM fields are required.
- b – You can customize the appearance of CAN SPAM content with HTML and CSS.
- c – Email templates cannot contain custom modules.
- d – Email testing is accessed through the editor.
Which of the following is NOT an important aspect of using HubL?
- a – Documentation
- b – Memorizing all tags and parameters
- c – Community
- d – Developer info
True or false? It is not possible to publish an email without a link to at least one email subscription template.
- a – False
- b – True
True or false? Page metadata can be populated in the “Settings” section of the page editor.
- a – False
- b – True
Which statement about template types in the HubSpot CMS is TRUE?
- a – There is only one template type.
- b – There are a number of different template types which can be created in either drag and drop or coded formats.
- c – The editing experience is exactly the same for every template type.
- d – There are three template types.
When creating a drag and drop template, how do you add components?
- a – Components are added in “Settings.”
- b – Templates are pre-populated with all the available components.
- c – Components can be dragged from the “Add” section of the Inspector.
- d – Components must be coded in Javascript and uploaded via FTP.
Which of the following is NOT available in the file manager?
- a – File URL
- b – HTML image snippets
- c – Replace button to swap assets
- d – Template and content dependencies
Which statement about adding classes to groups is TRUE?
- a – You must use a coded template to add classes to groups.
- b – Classes added to groups of components will be added to all components inside the group.
- c – Classes inside of global groups will apply to every instance of that global group in a site.
- d – Classes cannot be added to groups.
Which statement about stylesheets is TRUE?
- a – When a template is created, a new stylesheet with the name of the new template is automatically created and attached to the template.
- b – New stylesheets automatically include helpful but optional CSS.
- c – HubSpot stylesheets are written in Javascript
- d – Stylesheets can be added to specific areas of templates with the stylesheet module.
Which of the following CMS tools is used in CAN-SPAM compliance?
- a – Navigation in settings
- b – Email settings
- c – The replace button in file details
- d – The templates tab in blog settings
True or false? System templates are not published from templates by content editors.
- a – True
- b – False
Which of the following statements about the design manager is NOT true?
- a – The design manager is an IDE.
- b – The design manager helps developers build and manage assets.
- c – The design manager is used by content editors to publish pages.
- d – The design manager can be used to edit CSS files.
Which statement about CSS in modules is TRUE?
- a – CSS rules will have the same effect on the page whether they’re written in the CSS section or the HTML+ HubL section of the module editor.
- b – Module CSS is automatically scoped to modules and will not apply to other elements on a page.
- c – CSS added to the HTML+ HubL section of the module editor will be repeated on the page in every instance of a module.
- d – Modules require custom CSS and cannot be published without it.
Which of the following statements about accessing HubDB via Javascript is NOT true?
- a – Most GET requests only require a table ID.
- b – Modifying table data requires authentication.
- c – Using an API key in client side code is a bad idea.
- d – As long as your Javascript is written in the CMS, it can be used to modify table data.
Which of the following statements does NOT accurately describe HubL?
- a – HubL is a templating language for building assets in the HubSpot CMS.
- b – HubL provides common programming constructs like variables, loops, and conditionals.
- c – HubL is not client side code.
- d – HubL provides state management for single page apps.
Which of the following statements about module fields is TRUE?
- a – Modules can contain logic fields.
- b – Modules have 7 available fields.
- c – Math fields allow content editors to use modules for common tasks like long division.
- d – Field groups can only contain fields of the same category.
Which of the following HubL and HubDB behaviors should be avoided if possible?
- a – Use a filter query to reduce the data returned from a request.
- b – Use the reject attribute filter to create subsets of table data from an initial request.
- c – Use multiple requests to the same table to build complex templates.
- d – Use loops to access data in multi-select columns.
Which type of CMS assets do not require HubL?
- a – Custom modules
- b – Drag and drop templates
- c – Coded email templates
- d – Coded blog templates
Which of the following is not an aspect of dynamic pages?
- a – Dynamic pages require multiple templates.
- b – Pages are generated from table rows.
- c – A published page must be linked to a dynamic page table via page settings.
- d – Links to dynamic pages should be added to the listing section of a template.
Which of the following is NOT a sound strategy for working with HubDB?
- a – Plan out your data needs with stakeholders before creating tables in HubDB.
- b – While adding data to tables, create columns as needed and iterate as the project grows.
- c – Use multiple tables linked with foreign ids to handle complex, multi-faceted content.
- d – Use select columns to standardize repeated values.
Which of the following characters are used to open a HubL statement?
- a – {-
- b – {%
- c – [&
- d – {#
True or false? HubDB is a good place to store customer data such as credit card numbers.
- a – True
- b – False
Which of the following is NOT possible with HubL?
- a – Passing data from HubL to client side code
- b – Passing data from client side code to HubL
- c – Looping through data
- d – Conditionally executing HubL statements
Which of the following is NOT an aspect of HubDB?
- a – HubDB is a semi-relational data store.
- b – HubDB is a subset of fork of MySQL.
- c – HubDB uses tables to store data in rows.
- d – HubDB tables are accessed with a unique ID.
Which of the following statements about HubL filters is TRUE?
- a – HubL filters are only used in expressions.
- b – HubL filters are used for a wide variety of tasks.
- c – HubL filters cannot be used in loops.
- d – HubL filters do not accept arguments or parameters.
Which of the following statements about navigation items is FALSE?
- a – Navigation items can have extra URL parameters.
- b – It is possible to create items without links.
- c – Navigation items are automatically created when editors create a new page and cannot be created elsewhere.
Which of the following is NOT a system template?
- a – Email subscription preferences page
- b – Search results page
- c – Blog preferences page
- d – Error page
Which statement about the “Prevent editing in content editors” option is TRUE?
- a – Prevent editing in content editors is not an option in HubSpot CMS templates.
- b – Prevent editing in content editors is a blog feature that allows developers to lock the number of tags in a blog.
- c – Prevent editing in content editors allows content editors to set permissions levels for specific content so that other editors cannot make edits.
- d – Prevent editing in content editors allows developers to set static values for components at the template level that content editors cannot modify in the page editor.
Which statement about naming components is FALSE?
- a – Components can be named in the Inspector.
- b – Component names help content editors understand how to use a template.
- c – Component names can be the same as their default values.
- d – Component names should be left at default because content editors will always get all the context they need from the editor.
Which of the following is NOT an important reason to familiarize yourself with available settings?
- a – Some templates are coded exclusively in settings.
- b – Some settings determine data available in templates.
- c – Code can be added globally in settings.
- d – Web developers should advise content editors on technical aspects.
Which of the following statements about menus in HubSpot is FALSE?
- a – Navigation with more than one level is managed in settings.
- b – Simple menus can be edited at the page level.
- c – HubDB can be used to build totally custom menus.
- d – The only way to build a menu is with the menu tool.
Which data structure does HubL use for storing data in key and value pairs?
- a – Lists
- b – Dictionaries
- c – Objects
- d – Binary trees
Which statement about module fields is FALSE?
- a – It’s a good idea to give fields an intuitive and descriptive name to help content editors use your modules.
- b – Fields have HubL variable names that are used to create the markup for modules.
- c – Fields can be required but there’s no support for custom validation.
- d – The available options for fields vary depending on the field type.
Which of the following sets of data would NOT be a good fit for storing in a single HubDB table?
- a – Names, titles, and biographies of employees of an organization
- b – A dinner menu for a restaurant
- c – Information about cats available for adoption from an animal shelter
- d – Product inventory, hex values for internal branding guidelines, vendor contact archive
Which of the following statements about HubL in modules is TRUE?
- a – Modules must contain custom HubL and cannot be published without it.
- b – HTML attributes cannot contain HubL code.
- c – Module fields are added to module markup with HubL.
- d – The drag and drop editor allows you to write HubL in a custom module without having to write code.
Which of the following statements about blog templates is TRUE?
- a – Any template can be used for blogs.
- b – Blog templates cannot contain custom modules.
- c – To build a blog template, you must write custom HubL.
- d – Only blog templates can be used for blogs.
Which CMS tool would you use to find the file size of a PNG?
- a – Email settings
- b – File manager
- c – Blog editor
- d – Website pages settings