PrestaShop 1.7.8.0 beta is open for feedback!

PrestaShop 1.7.8.0 beta is open for feedback!

The first Beta version of PrestaShop 1.7.8.0 is now ready for you to test!

We are very happy to announce today the release of the beta version of 1.7.8. This version includes many features and bug fixes, we count on you to test the Beta and report any bugs you encounter.

Main new features are: the redesign of the translation system that facilitates the export and the translation of your modules and themes, a new header for multistore allowing to configure the different stores more easily and quickly, and many other improvements.

With more than 1,340 merged Pull Requests and 242 bug fixes, including 15 major and 5 Topwatcher (issues that are followed by more than 5 people), this is one of our biggest releases yet!

Also, a big thank you to our 163 contributors without whom we would not have had this beautiful version. And a warm welcome to the 93 new contributors for their first contribution.

This Beta release is a great opportunity for you to start working with it before we release a stable version. Go download and install this Beta version as a test store, either on your machine or your web hosting, then play with it – and give us your feedback! We need you to test this new version of PrestaShop.

If you find regressions compared to previous versions, please create an issue on Github to help us make it stable more quickly.

Remember, this beta version is pre-release software and is expected to have bugs. Do not use it in your production shop!

New features & improvements

Translations

  • The translation feature has been revamped, adding the possibility to export back-office, front-office, email, themes, and module translations.

The new translation export

  • Modules using the new translation system introduced in 1.7.6 can now distribute their own translation files in the XLF format. Users can use the export tool to migrate from legacy PHP catalogue to XLF catalogue

Multistore

New Multistore header

One of the main difficulties for the merchants using the multistore was to know which store they were configuring in the back-office and this was bringing a lot of configuration errors.

This is why a new back-office header has been added. Its color can be customized for each shop or group of shop(s) in the multistore parameters. It makes it easier for the merchants to know which shop or group they are configuring and therefore avoid configuration mistakes.

The new multistore header

New specific settings drop-down

This drop-down is displayed in the “all shops” context and group contexts. It allows the user to see which settings have been customized in one or several specific shops. Therefore the settings that will not be overridden following a change made in “all shops” or in a group context are easier to spot.

For now, it has been implemented only in the Maintenance page of the back-office.

The new multistore specific setting drop down

Checkboxes

Checkboxes are displayed in a specific shop context and a group context.

They are displayed before each field/toggle/parameter and allow merchants to apply specific settings to a store or a group of shops. Merchants just need to select the parameter to modify, bring their modifications, and then save.

For now, they have been implemented only in the Maintenance page of the back-office.

Many users reported that the linklist module was not compliant with multistore, as it was quite important for their activity to be able to feature different links in the footer depending on the shop.

This is why it was decided to make a new version (v5.0.0) of this module to make it compatible with multistore and it was achieved thanks to the great work of Krystian Podemski :pray:

Experimental features

The version 1.7.8 introduces Experimental features. With that, complex new features can be disabled or hidden by default until they are considered stable. Experimental features also called “feature flags”, allow developers to deliver small incremental improvements without compromising the system stability, which is a common practice in the software world. Developers or experienced users can enable or disable an experimental feature in Advanced Parameters > Experimental Features, knowing the risks involved.

The new Experimental features page

Back-office Product page

New features and improvements have been shipped for the product page. However, as the product page is a key piece of the back-office, we are delivering them with extra caution:

  • In 1.7.8, the changes are added in an Experimental product page behind a feature flag: back-office user must enable the Experimental page before using it. This should allow the community to try out this improved page in test environments and give us a lot of feedback.
  • In the version after 1.7.8, the new and improved product page will replace the current page.

This 2-step delivery aims to ensure the stability of the changes before they are made definitive.

The new experimental product page includes:

  • A bulk suppression in the image manager

It allows the user to remove images from the product easily (especially useful when the product features a large number of images).

  • The possibility to replace an image

It allows the user to avoid having to remove then add then re-assign an image.

  • A new pagination on the list of combinations

The current product page loads every combination of the product, even if there are hundreds of them, which can make the page very slow. The new pagination allows loading only a relevant number of combinations providing a nice performance improvement.

  • A filter system to help user find combinations. Back-office user can filter the combinations by attributes

It will help the user to find the right combination quickly.

Improvements of the UI Kit

  • PrestaShop back-office UI Kit has been improved to have a solid Design System with adjustment of alert colors, font size, buttons contrasts, and an enhancement of the responsiveness. #16587 #22358 #104

the new mobile improvements

Front-Office improvements

  • Improvements of classic theme images width, accessibility and some lighthouse KPI #23352 #20775
  • The implementation of Native Lazy Loading on theme Classic (see the complete detail of the feature) #19549
  • The label ‘Out of Stock’ is displayed on Catalog pages #21105
  • The images on the Product Page can now be swiped on mobile for Classic theme #20431
  • The subcategories are displayed on Categories pages #10407
  • Return a 404 response when user visits product page for a product that does not exist #21330

Back-Office improvements

  • TinyMCE mobile theme is enabled in the back-office #23225
  • The overrides active in a shop are displayed in the Informations tab #21368
  • A new order internal note is available in the Order View Page #14753
  • Back-office users can upload custom avatars #18653

Notable fixes

Topwatchers:

  • When Clear cache button was clicked twice, the user would see an error page #11105 (Major)
  • Profiler was not compatible with hooks and module #9659
  • Double click on “Add to cart” on the product page FO was freezing the page #9634 (Major)
  • Select the payment method if only one available by default #11435
  • Wrong translations of back-office menu tabs #9816

Major bugs:

Front-Office

  • When a product had a specific price applied and was discounted by unit, the discount displayed on the product page was false #16163
  • Guest Order Tracking redirected to shop Homepage when Friendly URLs were disabled #20194
  • An error was displayed on checkout when Legal compliance module was installed #12509
  • Checkout slowdown when many orders were made with a Guest account #16584
  • Ecotax was displayed tax excl. instead of tax incl. #18835
  • Confirmation button on Checkout should be disabled if Terms and conditions are not approved #19161

Back-Office

  • An exception was thrown when adding an invalid parameter to the Language form and “No picture” image #22500
  • In Back-Office, some of the JavaScript code relied on form field’s ids and attributes that were modified in 1.7.8 #21819
  • When creating a customer account, the number of characters was only checked browser-side #19505
  • It was possible to create a catalog price rule with percentage value greater than 100% #19013
  • A bug in TinyMCE 4.0.16 was creating errors, fixed by upgrading TinyMCE to 4.9.8 #11011
  • Unit price was reset to 0 upon activating/disabling or duplicating products from the Product List #10792
  • Installing PrestaShop with SSL was complex because some settings were not acknowledged #10482

WebServices

  • The id_group_shop was shared instead of id_shop_group in webservice parameter #19566

Distribution

  • .docker folder should not be inside release zip #22233

Notable technical improvements

Hooks

  • New hooks into Presenters, allowing to enrich the data built by these services #11125
  • New mechanism to extend TinyMCE configuration #19408
  • New hooks for cart modal – crosseling and promotion #17709
  • Ability to enable and disable Hooks #20848
  • Allow override of checkoutProcess construction #19848

Tooling

  • Apply PHPStan level 4 #16471
  • Use a custom PHPStan extension for PrestaShop #22728
  • Apply ESLint to themes and Classic Theme folders #20080
  • Apply ESLint to default back-office Theme #22998
  • Apply StyleLint to default back-office Theme #22885

Theme

  • Remove microdata in HTML flow and replace by JSON-LD for Classic theme #22867
  • CSS classes / element attributes selectors now prefixed by js- #14346
  • Add selectors mapping so themes can override it #20002
  • Update jQuery from 3.4.1 to 3.5.1 #23122

Other

  • Fix sessions cookies SameSite bug #22711
  • Enabled High DPI support in ImageRetriever #19798
  • Make the back-office menu translatable through the translation interface and fix many translation problems when installing other languages #9762
  • There is no more legacy back-office service container, the Symfony container is now available everywhere: #14995
  • New Webservices endpoint to manage and download Attachments #12728
  • The UI Kit source files are now imported #18396
  • Update jQuery from 3.4.1 to 3.5.1 on default BO theme #23122
  • Update BO theme style in legacy pages to match the UI kit #22435
  • Introduce Javascript component loading through window.prestashop #20591

Dependencies and Software compatibility

  • Add blockwishlist v2.0.0 as native module #23617
  • Remove archived modules from the ZIP #23617
  • Update CLDR to latest version 38 (2020-10-28) #21678
  • Enable use of Composer 2.0 #20986
  • Enable compatibility for PHP 7.4 #16477

Symfony migration

See the new pages migrated in Symfony, we are now about 65% of the Back-Office pages migrated.

  • Catalog > Attributes & Features > Attributes listing
  • Shop parameters > Order settings > Statuses > Add new / edit order status
  • Shop parameters > Order settings > Statuses
  • Shop parameters > Order settings > Statuses > Add new / edit order return status
  • International > Locations > Zones
  • International > Locations > Add new / edit zone

Download

You can download PrestaShop 1.7.8.0 beta here:

Download PrestaShop 1.7.8.0 beta now!

How to help test 1.7.8

Your feedback on this beta is essential. The more regressions you find right now, the fewer bugs there will be on the final release, which means fewer patch versions and fewer problems on your (or your customer’s) online store.

You must:

If you have any questions about the version and its features, feel free to share them on the PrestaShop open source project’s Slack.

Known issues

This post is also available in: English