Hello Elementor Theme 2.7.0

Library

Introducing the new version of Hello Elementor Theme, the perfect starter theme for your Elementor website. With over a million active installs, Hello Elementor Theme is the most popular WordPress theme. It offers a minimal design, with excellent performance, and this new version makes it even leaner and faster.

Version 2.7.0 has updated the minimum WordPress version requirements, improved security, accessibility, and performance, removed legacy code and more.


Minimum Required WordPress Version Updated to 5.9

Previously, Hello Elementor Theme required WordPress 4.7 or above, the new version requires WordPress 5.9 or above. For consistency, we aligned this requirement across all our products (Hello Elementor, Elementor and Elementor Pro). All Elementor products are adopting the new threshold at approximately the same time, to enable you to update all products at the same time.

Please note if a website uses WordPress version 5.8 or below, the WordPress upgrade mechanism will not display the ability to upgrade to Hello Elementor 2.7 as the website doesn’t meet the minimum requirements.


Legacy Code Removal

External services that provide analytics, chatbots and advertising services ask websites to embed scripts to the site’s <head> tag and at the beginning or the end of the <body> tag. WordPress themes use the wp_head, wp_body_open and wp_footer hooks to embed 3rd-party scripts to the site.

Previous Hello Elementor versions required WordPress 4.7 and the wp_body_open() function was introduced in WordPress 5.2, this is why we had to create backwards compatibility support for this functionality for older WordPress versions.

Now that the minimum required WordPress version is 5.9, we removed the workaround from the theme’s code, making the theme cleaner and faster.


Deprecated Filters Removal

Four years ago, in version 2.0, six filter hooks were renamed. The theme adopted a consistent prefix for filter hook names. And the old hooks kept for backward compatibility, to give developers enough time to rename the hooks.

Four years forward, in version 2.7, the deprecated hooks are finally removed from the code. The deleted filter hooks are:

  • elementor_hello_theme_load_textdomain
  • elementor_hello_theme_register_menus
  • elementor_hello_theme_add_theme_support
  • elementor_hello_theme_add_woocommerce_support
  • elementor_hello_theme_enqueue_style
  • elementor_hello_theme_register_elementor_locations

Markup Updates

In previous versions, the search results pages didn’t support featured images, while all other archive pages did. Version 2.7 matches the markup to create a consistent display for all archive pages.

In addition, previously if a post had a featured image, a link with an image was displayed in archive pages (<a href=""> <img src=""> </a>), but if the post had no featured image, an empty link (<a href=""> </a>) was still placed, without an image. This increased HTML and caused accessibility issues for users that navigate with keyboards. Hello Elementor version 2.7 removes this redundant link if the post has no featured image.

Finally, unnecessary role attributes have been removed from HTML landmark elements like <main> , <nav>, <aside> etc. because they already have implicit ARIA roles. HTML elements like <main role=”main”> or <nav role=”navigation”> don’t have role attributes anymore.


Better Security

Hello Elementor 2.7 enforces a security update to make the theme less vulnerable to script injections, by implementing WordPress escaping best practices everywhere.

In this version all the translation strings have been updated to output secure code using esc_html__(), esc_attr__() and other escaping functions. This will make sure that hackers won’t be able to target translation strings to inject scripts to the site.


Accessibility Improvements

The WordPress nav menu in the header section has been updated for better accessibility. On mobile view, the toggle button now has a role="button" and tabindex=”0” to allow keyboard users to navigate the toggle. In addition, the toggle button can now be opened not only using a mouse click, but also using Enter and Space keys.

Additionally, prior to this version, the “Menu” string that appeared next to the toggle icon couldn’t be translated. Hello Elementor 2.7.0 makes it available for translation so it can be displayed in text, in your site’s language. You can translate this string to your language here.

Finally, the skip link at the top of the page has been upgraded. The skip link is used by screen readers to quickly navigate to the main content. This version introduces two new filter hooks that give developers more control over the skip link. The hello_elementor_enable_skip_link filter lets you enable/disable the skip link (default is true, display the skip link for screen readers), and the hello_elementor_skip_link_url filter lets you change skip link URL (default is #content, an element with a content id).


Performance Boost

Modern development tools use automation for better and precise code. The theme uses the autoprefixer package to add CSS vendor prefixes such as -webkit-*, -moz-*, -ms-* and -o-*. CSS vendor prefixes are added to improve cross-browser compatibility support, better backwards-compatibility for CSS rules and support for older browsers.

In this version, the theme has stopped supporting dead browsers. A dead browser is a browser without official support or updates for over 24 months. Internet Explorer 11, for example, is considered a dead browser. The meaning of this change is that the theme’s CSS file size will be reduced as some vendor prefixes have been removed.

If we compare version 2.7.0 to version 2.6.1 we will see that the total CSS files that load in the frontend have been reduced by 17.4%, to only 17.51kb. It’s a huge reduction, which leaves a very low footprint on your website.

2.6.12.7.0Change
style.min.css5.9kb5.61kb-4.91%
theme.min.css15.3kb11.9kb-22.22%
Total Size21.2kb17.51kb-17.4%

UPDATE – VERSION 2.7.1

A new patch version was released to fix an issue caused in Child Themes that use a custom header.php file containing the deleted hello_elementor_body_open() function. The patch restored the deleted function to prevent errors.

Updating to version 2.7.1 prevents the error but this is a temporary fix, we plan to delete this function by the end of the year. If your site uses a Child Theme with a custom header.php file, you need to replace the hello_elementor_body_open() function with wp_body_open().

Developer Newsletter

Stay up to date on the latest developer news, product updates, and best practices.

Author

Picture of Rami Yushuvaev
Rami Yushuvaev
Head of Elementor Developers Experience & Performance Lead. Fullstack developer and open source projects contributor.