The default language of any content posted is English. Do not create multi-accounts, you will be blocked!
Information: Safety & Support
Resources here are generally safe, but false positives may occur on Virustotal due to certain coding techniques. Exercise caution and test before use. Consider buying licenses to support developers. Your security is our priority.
We added a check to not display the back button on the page when displaying a menu item of the type "cart display" as it makes no sense to allow access to the control panel from there.
The address type could be lost on an address when editing from the frontend an address already used for a previous order.
We fixed a deprecated message on PHP 8.3 in some rare cases when displaying a product with variants on the frontend.
When the "Display add to cart button for free products" setting was turned on, and with a product with no price but with variants with prices, but no price on the default variant, the custom item fields would not display on the product page even if they should have. We've improved the check there so that it works properly.
We've fixed an error which could happen on non HikaShop pages when the cart notification plugin would hae been uninstalled by the shop owner.
We fixed a fatal error with the IP2Location.io integration in the geolocation plugin.
We fixed some warning messages which could happen when configuring the PayPal Checkout payment method based on what PayPal returned for the status of the merchant account.
When the "bought" attribute of a hkshow or hkhide tag would be used, the plugin would only take into account products with 2 sales and more, instead of 1 sale and more.
We fixed an error message display issue with the FedEx plugin.
The like button of the like plugin wouldn't be clickable with the zoom option activated on products listings.
We've added numerous fixes for the FedEx 2 shipping plugin.
We fixed some warnings with the new FedEx plugin.
We deactivated the auto submit of steps system on the checkout as it had too many side effects.
We fixed an issue with the new FedEx plugin which would create an error on PHP 8.2 when trying to create a new shipping method for it.
We fixed an error of packaging with the new Fedex shipping plugin.
On Joomla 5, adding to the cart the variant of a product with an access level not set to all the user groups while not being logged would lead to the variant not being added to the cart.
The add to cart process could generate an error message in some rare cases on PHP 8.2.
The checkout could auto submit the step when deleting or creating a new address in some rare cases.
The pagination of the carts listing in the backend didn't work properly when the search was used.
We fixed a deprecated message with the URL generation in some rare cases on recent versions of PHP.
The "Provide points instead of fees" setting, when activated, could generate an error when an order was created at the end of the checkout.
With the "thumbnails" setting turned off, the system would still use thumbnails on the product page when the product would have several images.
When "all" would be selected for the order status setting of limits, the past orders wouldn't be taken into account.
The billing address could be used in some cases even if the shipping address was selected as the type of address to be used for taxes.
The terms and conditions popup didn't display the article selected properly on Joomla 5.
We fixed a warning which could happen with order mass actions with an action "add product" where the product being added wouldn't have any price.
We fixed a warning which could happen on the products listing of the order details page in the backend with custom product fields displayed on it. The warning would display once the main product of a variant purchased in the order would be deleted.
We fixed a problem with the sorting of categories of filters when the categories don't have any ordering and the filter is configured to display several levels of categories.
For the support of variants for discounts to be possible, we had to have to add the discount on the price of the variant. However, at the point where this is done, the price of the variant can potentially be a copy of the price from the main product (if the variant doesn't have a price itself). And that price from the main product can already have a discount applied on it if the discount targets the main product. In such case, several discounts could be applied several times on the price of the variant while only one should apply. We made a modification so that when the system tries to add a discount to a price, it first checks if the price doesn't already have a discount applied. If so, it skips the process.
When using the "last week" period in a report, it would generate an error on PHP 8.2 and above when display the report, and the same error would also appear on the dashboard if the report would be published as a widget.
Following the addition of the new "equal to" / "not equal to" dropdown to the "display limited to" setting of custom fields, when several custom fields would be restricted to the same parent field, only the first one would be displayed / hidden properly.
Translation overrides for HIKASHOP_COUPON or HIKASHOP_PAYMENT with HTML in them would break the transaction request with Authorize.net.
We fixed an error which could happen on the orders listing in the backend after disabling a shipping plugin which was used by previous orders on PHP 8 and up.
The smart search plugin now properly handle deleted products when the "activate product recovery" setting is activated and the products end up in the trash instead of being really completely deleted.
When a filter on categories was restricted to a particular category, the filter wouldn't load the categories properly.
We modified the built-in plugins of the system group to make sure they only execute on the frontend and don't do anything on other requests like when the CLI is used.
We fixed some warnings with the structured data for products or variants without prices.
We fixed an issue with the old FedEx shipping plugin.
The filters on columns with the = and != operators on an empty value would be ignored in massactions.
The payment via PayPal account might not work in some cases with the ACDC option enabled.
The translation of the custom field label in the emails didn't work properly.
We fixed a MySQL query error which could happen in some rare cases with the Smart search plugin when saving a product from the backend interface.
An error message would popup on the HikaShop configuration for new installations of HikaShop regarding plugins not being installed even though there was no problem.
We fixed an error which could happen with the "instant capture" setting turned off in some rare cases with the PayPal Checkout plugin.
Improvements (18)
We improved the update of the price without taxes when the user inputs his products price with taxes.
HikaShop now includes the HTTP header token of Joomla taken from the JS of Joomla if available during AJAX requests to avoid potential issues with the token being missing / outdated for one reason or another. It will improve resiliance in cases where caching is too agressive and such.
There is now a notice box poping up when you click on an email tag so that the user knows he can now paste the tag in the HTML editor.
We've improved the address saving in the user edit form of the HikaShop backend so that it properly display error messages when necessary.
The HikaShop Geolocation plugin now stores the IP address and its corresponding country code in the database after a successful request to a geolocation service. This way, before making a new query it will try to get the information from the database, saving resources and useless API requests.
It is now possible to use the ID of the product in the "bought" attribute of the hkshow and hkhide content tags.
We've added logging of failed VAT number online checks in the "payment log file" of HikaShop.
We added a label for the quantity dropdown of the pagination to help users with screen readers.
We made some improvements to the javascript handling the add to cart processing in order to better support template preview systems.
The CSV export action of mass actions now properly handle the order_product_price and order_product_tax columns as price columns. This means that the export takes into account the "CSV decimal separator" setting for them, similar to what it already does for columns like the order_full_price.
When a main product is published or unpublished, now all the variants of the product are also processed by the Smart Search in order for the status of their main product to be taken into account.
We added a "X-Robots-Tag: noindex" header to the AJAX requests refreshing the cart module. This should prevent search engines from trying to index these URLs.
We've optimized the category filter system on frontend products listings. In some cases, the gains can be a page load 5 times faster.
The content map type for indexed products on multilingual websites now contains the product type.
When the instant capture setting is turned off in the PayPal Checkout plugin, you had 3 days to capture the payment. We've made improvements in the payment plugin so that you now have up to 1 month to capture the funds.
By default, the HikaShop Cart module had all options by default set to No, that wasn't relevant, it's now adjusted.
We improved the look of multiple dropdown filters in order to use the fancy choicejs library included in Joomla 4 and 5, while still keeping the old chosen library on Joomla 3.
HikaShop will now automatically modify the current product's alias when saving a product and its alias is already used by another product.
New features (10)
You can now configure different Joomla tags for different variants of a product, and the tags will update on the product page when the user changes the selected variant.
We've added a new option to choose whether you want to filter the HTML of the product description in the backend. It is activated by default and thus, if you want to be able to add iframe tags or script tags in your products description, you'll have to turn off this setting.
We've added a sorting option to the UPS OAuth shipping plugin so that you can have the shipping services sorted with the cheapest one first on the checkout.
We've added a new option to define which price input to display (with or without taxes) when adding a new price, this option is directly in the price product form.
The consistency height option in your menu items sees the arrival of a new option which allows, in addition to using the consistency height, to have the buttons always aligned to the bottom.
We've added a new option to the TaxCloud plugin so that you can Exempt some user accounts from taxes if they have their taxes waved (for government entities for example).
We've added a new event when additionals (fees) are removed from the cart. This event is called onAfterCartRemoveAdditional
Since Joomla 5.1, the backend can be change between dark or light theme with a switcher module. HikaShop integrates with it so that the page refreshes in order to take this into account properly.
We've added advanced price display customization settings to the HikaShop products and categories listing menu items and the HikaShop content module. That way, you can potentially customize the prices display in much more details with an interface and potentially some translation overrides, without having to modify PHP code in view overrides.
We fixed a deprecated message with the deletion of a user or address on PHP 8.2
We've fixed some warning messages on PHP 8 with some times of widgets.
We've added an extra check so that when plugins for HikaShop try to load JS or CSS files through HikaShop and that it is too early or too late on the page processing, no error is displayed. HikaShop will just log the error in the HikaShop log file.
We've fixed the display of the file / image uploaded for custom fields of the type "AJAX file" or "AJAX image" with their "multiple" setting turned off.
When using the search input on the views listing in the backend, the pagination would not work properly in some cases.
In some cases the proper menu item would not get retrieved by the smart search plugin even though the product was properly linked to the category of a menu item.
We've fixed some warnings with calculations during the loading of the cart in some rare cases on PHP 8.2.
The publish / unpublish toggle of the variants listing displayed when editing a product in the backend didn't trigger the onBeforeProductUpdate and onAfterProductUpdate events. This lead to the variants not being added / removed from the index of the Smart search.
We've fixed a warning during the checkout.
We fixed a warning which could happen with the action log plugin when a product would be updated without providing its name.
We fixed a warning which could happen with the action log plugin when an order would be updated without providing its type.
We fixed a warning which could happen with the action log plugin when an order would be updated without providing its order number.
We fixed a warning which could happen with the action log plugin when HikaShop would be sending emails in some rare cases.
Creating a widget/report to display the total number of customers over a period would lead to a MySQL query error.
When uploading several files at the same time in a custom field of the type "AJAX File" or "AJAX Image" on the frontend, only one of the download links or thumbnails would work due to PHP not sharing the user session across concurrent requests. We bypassed that limitation by checking the file access in a different manner in such special cases.
The pagination on the backend orders listing wouldn't display on small screens.
We've fixed a Javascript error which could happen on the product details page when using a custom field of the table "item" and of the type "ajax file" or "ajax image" on Joomla 3 and which would prevent the use of the custom field.
In some cases, with many values selected in a multiple select, you could see all of the selected values.
We fixed a deprecated message with the geolocation plugin on PHP 8.2
We fixed an error which could happen when having a custom field with a MySQL query using user fields while the current user wouldn't be logged in.
We fixed a warning which could appear in some cases when creating a new category.
The language switcher module of Joomla wouldn't properly take into account the translation overrides of the product SEF name and category SEF name.
We've added an extra check in HikaShop when loading JS/CSS files so that DPCalendar's cron via the Joomla CLI doesn't generate an error.
Underscores in the Product SEF name and Category SEF name would prevent the system from properly using the corresponding translation override.
We have made a patch to follow MicroData structure via json-ld script.
We've added a new patch to better manage publish/unpublish icons in the variants backend listing.
We've added some extra fixes for conditions on product tags.
The yes / no selector in the user points checkout view might not work in some cases due to a PHP glitch.
We improved the user points plugin integration with AlphaUserPoints so that you can now change the rule name automatically created by the user points plugin for the integration. Before it would then generate an error.
Due to compatibility with Joomla 5.1.0 and publish/unpublish icon fontawesome, we had to dynamically add a "badge" class so that these icons can display properly.
The image gallery popup selector wouldn't work properly in some cases and it would loop the refresh of the popup.
We've removed a depecrated message with products with characteristics in some rare cases.
We've fixed an error with the legacy FedEx shipping plugin which could happen in some rare cases.
We've made some extra patches to better support structured data on product pages, especially for products with variants.
The user points plugin could generate a warning for guest users in some cases with AlphaUserPoints.
We fixed an issue whereby the product would be duplicated in the cart when editing it from the cart view and changing its custom item fields instead of being updated.
We fixed an error to better generate the url image for Json MicroData.
We fixed an error which could happen in some rare cases with the generation of thumbnails when the images can't be processed.
On Joomla 4 and above the version of the plugins were not updated in the Joomla extensions manager.
We fixed a potential fatal error with the PayPal Checkout plugin.
The alias of the product was not properly used in the URL of the product on the search results of the smart search for translations of the product.
The translated description was not properly displayed on the results page of the smart search.
We've improved the gallery selector popup so that it doesn't break when its javascript code is moved by page optmization extensions.
We've fixed the use of user tags in the MySQL query of data of selector custom fields.
We fixed some warnings on the login form of the checkout in a rare case.
We removed some deprecated messages in rare cases with the access level settings.
Deleting the index of the Smart Search component could result in an error in some cases.
When enabling some plugins like the HikasHop rates auto update plugin without saving its settings once, it could lead to a PHP fatal error on recent versions of PHP.
The prices where not editable anymore on the results table of massactions with an action "display the results" due to changes in a previous version of HikaShop to better export them in CSV files.
The PayPal Checkout payment plugin would not send the shipping and billing address to PayPal in some rare cases.
The PayPal Checkout payment plugin now properly support the mode with the Instant capture setting turned off. HikaShop will authorize the payment at the end of the checkout, leave the order "pending", and when the status is changed to "confirmed" in the backend, the payment will be captured.
Improvements (22)
When creating a new coupon, HikaShop will now initialize the currency selector with the main currency of the shop.
We've improved the error messages display of the legacy FedEx plugin.
You can now have other types of modules in the "Modules under the product page" setting of the HikaShop configuration.
The old FedEx plugin name has been changed to add "(legacy)" to it so that users will rather use the new FedEx plugin since the old plugin's API is getting deprecated by FedEx.
You can now select webp images in the image gallery selector.
The export file of reports will now use the name of the report and the current date and time in the filename. We've also added a hidden setting report_csv_filename_format if you want to customize the filename. You'll be able to use the tags {widget_name} {date} and {time} to set the filename format you want.
We removed the HikaShop history plugin from the HikaShop install package as it wasn't used anymore.
The payment log file will now be rotated automatically in order to avoid it becoming too big.
We've improved the category_pathway generation when the products listing is configured to be "grouped by category" and the "simplified breadcrumbs" setting is turned off.
There is now a "Hits" column on the products listing in the backend displaying the number of times the detail page of a product has been displayed.
It is now possible to provide different images for each language for the products and categories using translation overrides. For example, if the file is called "my file.jpg", you can have an override like MYFILEJPG="mon fichier.jpg" and upload the file to the upload folder of HikaShop in images/com_hikashop/upload/ via FTP to swap the image based on the language being used.
We've added trimming on the values of custom fields when saving them to reduce typing mistakes.
The affiliate terms article will now open in a popup. It will be nicer for the user and this also fixes a 404 error which could happen when opening the affiliate terms article link in some cases on recent versions of Joomla.
The product name and description, when displayed by a content tag is now translated with translation overrides.
We've improved the Canada Post shipping plugin so that it can default to Canada if the shipping addresses don't have a country field enabled.
When adding to the cart and the product can't be added for some "normal" reason (like if there is no stock anymore, or if a limit prevented the add to cart to happen), we now display the message to the user as a warning (orange) instead of an error (red) since it is not critical.
We've improved the activation link display in the user account email sent to the customer after the registration when the self activation is actived in the options of the Joomla user manager.
We've made it possible to directly use translation keys in the original fields, even with the "non-latin translation keys" setting activated in the HikaShop configuration.
We've improved the smart search plugin so that it doesn't index the products in the "all" language taxonomy and properly index them once per each language of the website when the website is multilingual.
When the user clicks on a button (like "login" or "register") on the checkout and no other view on the current step does anything, the checkout system will now automatically try to go to the next step.
When an affiliation partner uses the share buttons on the product details pages, the URL now contains automatically the affiliate parameter so that users clicking on the link will be counted for his affiliate account.
The shipping cost which can be added for the products in the Google Products plugin can now support transit and handling times.
New features (12)
The HikaShop Affiliate plugin now has an option to display the affliate program area on the user control panel only if the current user is a partner.
We've added a new "equal to" / "not equal to" dropdown to the "display limited to" setting of custom fields. This way you can remove the display of custom fields for one particular value of another custom field.
We've added a new choice to the price display setting of listings which allows you to use the price of the default variant of a product when the product itself doesn't have a price.
We've added an option "With an extra parameter in the URL" to the "Display view files" setting. This way you can add a tp=1 parameter in the URL of a page of your website to get the view files information without having to disturb other users of your website.
The API used historically by the FedEx plugin included in HikaShop has been deprecated by Fedex and will be terminated in a few months. Fedex have released a new API and we have developed a new FedEx plugin which is now included in HikaShop.
The PayPal Checkout payment plugin now supports PayPal credit and debit card payments, with 3D Secure support too.
We've added support for IP2LOCATION.IO to the geolocation plugin.
Custom fields of the type "AJAX File" and "AJAX Image" now have extra format options so that you can customize the look of the display for the files uploaded with them.
You can now add translation overrides for AJAX File and AJAX Image custom fields to customize the name and description displayed for each uploaded file. For example, if you upload a file my_file.pdf, you can use the translation keys MY_FILEPDF_NAME and MY_FILEPDF_DESCRIPTION in a your translation overrides file.
The user points plugin now supports the Rewardify points extension.
There is now a setting "Skip field" in the Google Products plugin to be able to skip some products.
We've added an option "Send order details" setting to the PayPal Checkout plugin.
We fixed a stored XSS trough SVG file upload security issue.
Note that it only affects HikaShop versions above the 4.6.2 up to the 5.0.1 and not if you updated HikaShop from previous versions as default support of SVG images for the upload of images was only added in the 4.7.0 for new installations of HikaShop. Also, it requires access to the backend of the website to perform, and can be avoided easily by removing the possibility of uploading svg files in the HikaShop configuration's "allowed images" setting or updating your HikaShop to the 5.0.2.
We fixed a deprecated message on PHP 8.2 when using an advanced date picker custom field in some cases.
An error could happen in some rare cases on PHP 8 in the popup opening when you clicked on the "email" button of an order in the backend.
The "download time limit" setting of files could not be set properly via the interface.
We've fixed a warning which could popup when third party plugins would push products to the cart without providing all the necessary data.
A HikaShop content module configured to display a listing of categories while on a category listing page with pagination would pick up on that pagination and apply it to itself while it shouldn't.
We've fixed a calculation issue on the product page in some cases.
We fixed deprecated messages when saving custom fields on PHP 8.2
Following improvements we've made to the dynamic filters in the 4.7.4, the cursor filters in dynamic mode had wrong behaviors in some cases.
In some cases the pagination URLs could end up with extra limit parameters causing issues with some SEO crawlers.
We've fixed some deprecated messages on PHP 8.1 in some cases with the display of the addresses.
We've made additional modifications in the PayBox plugin to support Sofinco.
We fixed a deprecated message which could appear in some cases in the payment notification email with custom item fields on PHP 8.1.
We've fixed a warning and a deprecated message on the checkout when changing the address in some rare cases.
We've removed MANY deprecation messages on PHP 8.2
We fixed an error with the export action of user mass actions when the user group name was selected for export.
We've fixed a notice message with the widget/report edition on the Essential edition.
The order saving on listings in the backend wouldn't work in some cases.
Creating a custom field with its required setting activated directly with the default value not filled would generate a warning in some cases.
When the "override shipping address" setting of a shipping method would be set to "hide" or to "text" but without any override text, the system would still display the shipping address form on the checkout if the user didn't have entered a shipping address yet.
There was a mistake in the handling of the CSRF token in the javascript of the uploader which led to the upload not working with JCHOptimize with the javascript compressed.
The share popup of wishlists was not displaying properly due to a typo introduced in the previous release to better handle the menu item being used.
We fixed a deprecated message with mass actions with an action "run a mysql query" in some cases on PHP 8.
We improved the number of rows and columns selector for menu items so that it wouldn't generated an error when the user would try to set 0 columns and 0 rows.
Improvements (31)
We've added extra error handling on email sending.
The structure and tags of the "reverse" layout of the product page has been updated.
With the characteristics displayed as radios and with 2 values in the characteristic, and in dynamic display mode, a value might be preselected even though it should not.
We've added a specific class for the out of stock message on the listing to be consistent with the product details page and to make it easier to customize with CSS.
We've added the events onPrepareDatePickerFieldOptions and onCheckDatePickerField so that third party plugins can modify the options of the date picker on the fly.
We now set the product name / product code as title of the page when editing a product in the backend.
We added support for Joomla 4 in the Europe Tax plugin.
The system will now go through the getBody/setBody of Joomla when triggering onAfterRender when a view of the checkout is being refreshed in AJAX. That way, plugins will be able to process the HTML from the body as if it was coming from Joomla.
The Smart Search plugin now takes into account the "show out of stock products" setting of the Hikashop configuration so that if it is turned off, the products without stock won't appear in the search results.
When a payment is cancelled in the popup of the PayPal payment button of the PayPal Checkout plugin, the plugin will now take into account the "cancel URL" setting of the payment method.
When content tags would be used to add "add to cart" buttons on pages where HikaShop is not loaded, the cart notification plugin wouldn't be able to display the notification box after the add to cart process.
The VirtueMart import now use the order creation date as the invoice date in HikaShop so that orders imported from VM can be used by the statistics system.
When deleting the last product of a cart from the cart display page while not being logged in, the system would redirect you to the login page after removing the last product from the cart instead of redirecting you to the "URL where to redirect when the cart is empty" configured in the HikaShop configuration.
The Smart Search integration will now index translations of products, provided the translations were added without Falang being installed.
We've added an event onCheckoutEmptyContentCheck so that plugins adding their own checkout view to the checkout can now provide the checkout system information on whether they are empty or not. Before, the checkout system would assume they were never empty. This will allow the system to automatically skip the current step if it finds that all the views on the current step are empty.
The checkout system will now move to the next step after a guest form is filled in the login block if it is the only block on the step.
We've added a confirmation to the "process" button of the actions popup on backend listings.
We've made sure that pressing enter or any other way to manually trigger the form submission won't process any action in the actions popup on backend listings, so that only the "process" button can be used, in order to avoid mistakes.
We changed the "OK" button in the popup of the "email" button of orders in the backend so that it is clearer that the button can be clicked.
We've added a new column "products" to the listing of carts and the listing of wishlists in the HikaShop backend.
We've improved the error handling of the PayPal Checkout payment plugin.
We've improved the compatibility with Route66.
The PayPal Checkout payment plugin now better handles the process when the "instant capture" setting is turned off and you want to manually validate the transactions on your PayPal merchant account.
We've improved the JSON parsing on the javascript side of HikaShop so that even if the server output error messages before or after the JSON response, it will still be possible to process it, making it more resilient.
The checkout now allows a user to finish his checkout with shipping required even if he never configured a shipping address in his account if he selected a shipping method which overrides the shipping address.
TincyMCE would end up too small for the product description on Joomla 4 and 5. The system now auto correct the height in javascript.
The order information is now available on the end page when using the credit card payment method, for easier customization.
In a massaction, When a "send an email" action is used with a trigger when an order is created/changed, the email can now use tags on the order data like {order_id} or {order_number}
We've added a hidden setting switcher_default_mode to the products listings so that the table / grid switcher's default mode can be changed without a view override.
Filter type classes can now be overridden more easily.
We've improved the dynamic characteristic display mode so that it will preselect the first available value when possible and retain previously selected characteristic values when available.
New features (11)
There is now a setting "minimum length" for text filters so that HikaShop will skip words shorter than the number configured in that setting.
There is now a setting "Words to ignore" for text filters so that HikaShop will skip words in that list when the filter is being used.
We've added the "Alternate layout" setting to the modules included in HikaShop.
We've added a new display option for the checkout progress bar to be displayed as an accordion.
We've added a new option to the HikaShop User Synchronization plugin to choose if you want HikaShop's javascript and CSS files to be loaded on all the pages of your frontend. This option needs to be turned on if you want to display add to cart buttons with content tags on pages where HikaShop is not normally loaded so that the add to cart notifications can be displayed to the user. When turned off, the add to cart will redirect to the checkout if successful, or refresh the whole page if there is an error to display.
We've added a new UPS plugin for the new UPS OAuth 2.0 API. The previous UPS plugin is deprecated and won't work anymore after the 3rd of June 2024. So we invite you to switch to this new shipping plugin. It is included, for free, in all the editions of HikaShop.
There is now an option "without link" in the "Image popup mode" setting.
In the backend, the order of the elements can now be made using drag & drop.
The carousel system now uses the Swiper javascript library instead of Owl carousel which isn't maintained anymore. It's still possible to fallback to Owl carousel with a hidden setting if necessary.
We've completely updated the Social Networks plugin to make it nicer, add Linkedin and remove Google Plus.
The order link in the order notification sent to the customer with the "email" button of the order details page in the backend was not working properly for guest users.
We fixed a warning message which could appear in some cases when saving the settings of the wishlist module.
We fixed a deprecated message on PHP 8.1 on the dashboard in some cases.
We've fixed a deprecated message on PHP 8.2 with the geolocation plugin enabled.
We've fixed an issue with the "optimize" function of the smart search system for Joomla 4.2+ which would lead to an error with the HikaShop Smart Search plugin enabled.
We fixed a deprecated message on PHP 8.2 with the geolocation plugin.
The order statuses filter on the listing of tax rates didn't display properly on Joomla 4.
We fixed a deprecation message on PHP 8.1 with the translation system when editing products in the backend in some cases.
We added a fix for the Hikashop Paypal Website Payments Pro Hosted Payment plugin on Joomla 4.
We fixed an error in some cases when validating the contact form in some cases on PHP 8.1.
We added some extra checks on the VirtueMart import so that even if categories in VirtueMart have incorrect data, it doesn't break the import.
We fixed an error in the user synchronisation plugin on Joomla 2.5.
There was an error in some cases with the use of custom fields of the table "order".
The return URL to the product page, from the contact form was missing the Itemid parameter leading to the current menu item being lost.
In strange quantity restrictions, with the "show select" quantity input display, and on PHP 8.1, it was possible to get an error on the product page and checkout.
We've fixed a warning on PHP 8.1 for "run PHP code" actions.
We've fixed the view builder for the frontend invoice/order details page view.
We've added a patch to the cart system for the multicoupon plugin to work properly in some cases.
If you first selected an order in the preview popup of an email in System>Emails and then deleted that order, the preview popup would then display an error until you would logout / login from your backend.
We fixed a warning when using the "update rates" button before configuring the HikaShop rates plugin.
We added a patch to the Google Products plugin to properly handle the situation when the user tries to generate the XML without having saved the settings of the plugins at least once.
Improvements (31)
Following changes to microdata, we now provide a price of 0 instead of no price microdata tag when the product has no prices.
We added some CSS to better display the quantity input in regrouped and left/right modes on Joomla 4.
The cart module in dropdown mode will now keep its dropdown open if it was already open before the cart module is refreshed.
It's now possible to have alternative layouts with an XML override for the HikaShop views.
You can now select variants in the "product" option of reports so that you can filter the report for a specific variant if necessary.
We improved the look of the columns selector on listings with a lot of columns on Firefox
There is now a hidden setting to be able to choose between redirection to the product page, or staying on the contact form after sending the contact request.
We now take into account the ordering of the characteristics on the main product for the display of the characteristic values on the products listing.
When using the HikaShop cart notification plugin in "popup" mode, the plugin would load the notify-metro.css file on the pages even though it is not necessary.
We improved the payment methods loading when doing it for existing orders so that it can better take into account the min/max weight/quantity/volume settings of the payment methods.
Filters with their "dynamic display" setting turned on will now keep their values once they are used until the filters are reset.
We improved the prices section of the product edit form to make it more obvious that you need to enter the price of the product in the prices listing and not in the retail price setting.
Shipping plugins can add their own tags to the formula setting by implementing the onCalculateShippingFormula(&$order, &$rate, &$tags, &$values, &$formula) method in their class.
The content tag button now also appears in the Advanced Modules Manager extension.
We've improved the description of the Google Products plugin.
We've improved the description for the "Local XML file path" setting of the Google Products plugin.
We've improved the integration between the custom fields on the checkout and the input validation mechanism of Joomla so that it can display error messages during for regex checks.
We've added category specific classes on each product on listing pages for easier CSS customization.
We added extra data areas for the products listing view so that plugins can dynamically add their HTML to the view.
We added extra data areas for the cart view in the checkout workflow so that plugins can dynamically add their HTML to the view.
The total tax amount is now displayed in the additional area of the order details page in the backend when the "detailed tax display" setting is turned off in the HikaShop configuration.
We improved the RTL CSS for the retail price display on the product page.
We made the PayPal Checkout plugin settings translatable.
We improved the JS code of the filter system and of the infinite scroll system so that they will work fine together even when JCH Optimize is activated, and even if there are javascript errors.
We now reset the task of the form on listings before starting a filtering. That way, if another action had be done which didn't require a page refresh (like a CSV export) it will work properly instead of running the previous task.
The AJAX upload system can now work even on pages where JCH Optimize is configured to cache the javascript.
We improved the compatibility between the infinite scroll and the filters system.
The user registration in HikaShop now also checks the email address against the domain names restrictions configured in the Joomla user manager options.
You can now select Venmo as a funding in the PayPal Checkout payment plugin settings.
We've modified the HikaShop wizard page, which is displayed at the end of the installation process to be able to easily create a PayPal Checkout payment method. Before, there was a email address input field to create a payment method with the old PayPal payment plugin.
We've added a check on the HikaShop configuration page so that if the PayPal payment plugin is configured as a payment method and activated, it will display an error message to notify the user he should configure instead the PayPal Checkout payment plugin.
New features (8)
We've added a next and a previous button on the order edit screen so that it is easier to navigate the orders.
There is now a column "products" on the orders listing so that you can directly have the list of products of the orders on the listing.
We added support for the UserPoints extension ( a fork of AlphaUserPoints made to work on Joomla 4 ) to the points plugins in hikashop.
It is now possible to use a tag {min} or {max} in the text to be displayed, when using the attributes mincart/maxcart/minproducts/maxproducts attributes in the hkshow and hkhide tags.
The Google Products plugin has a new option to be able to restrict the feed to only some categories.
We've added a Connect button to the PayPal Checkout payment plugin. That way, you just need to login to your PayPal merchant account for the plugin to automatically retreive your credentials for you.
We've added several options to the PayPal Checkout payment plugin to configure how the payment buttons should display at the end of the checkout.
We've added Pay Later Messaging options to the PayPal Checkout payment plugin.
We fixed a SQL injection vulnerability which could allow access to data from the database from the backend order edition area. Please update your HikaShop if you're using an older version of HikaShop.
When two discounts had the same percentage / flat amount, and were configured the same way, and a third party plugin would filter out the discounts based on extra settings not known to HikaShop, it could lead to HikaShop not seeing discounts it was supposed to see. This could happen for example with the vendor restriction on discounts when HikaShop would be integrated with HikaMarket Multivendor.
Changing the quantity of a product in the cart in really rare cases could lead to an "access forbidden" error.
We fixed a warning on PHP 8.1 with the add to cart button display on the variants listing on the product page in the frontend.
When products would use an external image as their main image, the thumbnail for them on the email notifications wouldn't display properly.
The maxproducts / minproducts attributes of the hkshow / hkhide tags were not working properly in some cases.
Joomla 4.3 changed the form validator javascript and we now have to provide the ID of a form element and not anymore the ID of a container which can be a form or not. Previous versions of HikaShop were providing the ID of the div around the registration form on the checkout. We now provide the ID of the checkout form element to prevent a javascript error in the validator code.
We now properly retreive the alias from the main product when indexing variants with the smart search.
The special characters might be lost in some cases when using custom fields of the type "radio" or "checkbox".
We fixed an error when editing a menu item / module in some cases on PHP 8.1.
The selected characteristic values could be missing on the waitlist form in some cases.
When all the prices of a product would be restricted to user groups not linked to the current user, and the user would use a sort filter with, among the choices, price sorting, if the user selected another sorting than price, the product would not appear in the sorted products listing evne though it should.
We fixed some deprecated messages on PHP 8.1 when creating new filters in the backend.
The ratio calculations in "proportion" mode could result in wrong ratios when products had variants, leading to a wrong tax calculated in some rare cases with several tax rates in the same order.
The cart notify plugin would redirect to the checkout even when the add to cart was failed when the popup mode was used with the redirect on success option activated.
We improved the compatibility between the infinite scroll and the filters system.
We've fixed several deprecated issues with PHP 8.1 on the new payment method form.
When filtering on the orders listing would result in no orders being found, it could result in some cases in a MySQL error.
We've made a fix for the PayPal Checkout plugin following changes in the 4.7.2
We fixed an error which would happen when copying orders with the 4.7.2 due to changes made in that version for the order management.
Improvements (3)
We improved the filter system dynamic refresh mechanism to avoid failing when there is a javascript error in the HTML returned by the server.
If the last step of the checkout is empty, and the user arrives on it, the system will now automatically move to the order creation process.
The non-selected values of "dynamic display" filters will now be still available for selection.
We fixed a compatibility issue with the Multi coupon plugin when using auto loaded coupons.
We fixed some warning in rare cases at the end of the checkout with discounted products on PHP 8.
In some rare cases, the smart search plugin integration could generate an error when saving a product in the backend.
When a coupon was in "override discounted products" mode and with a percentage value, and it was applied to a discounted product, it would calculate a lower coupon value than what it should be.
We fixed deprecated messages on the discount edit form on PHP 8.1.
We fixed an error on the user control panel on PHP 8.2.
If custom address fields have all be disabled for shipping or billing, then the address block in the checkout won't stop the customer from finishing the checkout because of a missing shipping/billing address.
We fixed an error with the WorldPay Global Gateway plugin on Joomla 4.
There was an error on the product page on the frontend on PHP 8.1 when a product had a characteristic added to it without any variants.
When custom order fields would be restricted based on the shipping or payment method, they wouldn't display properly on the frontend order details page.
We've fixed an issue in some rare cases with filters.
When not using the "force menu on checkout" setting the HikaShop configuration, the "proceed to checkout" button of the cart module could, upon refresh after an "add to cart", sometimes use another menu item than the current menu item, even if the current menu item would be a HikaShop menu item.
In some cases when two columns would have the same name in the exported XLSX of a mass action, it would be possible to get the data in the wrong column.
We fixed an issue with the mass action export in the XLSX format on PHP 8.1.
There was an error on the frontend in some rare cases with PHP 8.
We fixed warnings when editing menu items in the Joomla menu manager on on PHP 8.1 and above.
We corrected a class name for the image of the products in the cart module.
We fixed a problem with the column hide/display mechanism in French.
Options displayed as radio or checkbox might not work properly in some cases.
We've added a patch to support several email addresses in the user profile for Joomla 4.
We fixed some deprecated messages on PHP 8.1.
We fixed deprecated messages on PHP 8.2.
We added some extra checks to the weight / volume conversion mechanism to avoid warnings on PHP 8 with invalid units.
The translation popup of categories was losing the name and description in some cases.
We fixed some deprecated messages on the order details page and invoice with the address display.
We fixed some deprecated messages with the Smart Search integration on PHP 8.1.
The URL in the "Add to cart HTML link" popup was missing the product ID due to a previous modification.
The URL for the activation message to be displayed on after the registration was not properly using the current menu item.
When updating from really old versions of HikaShop, and you had never changed the "popup mode" setting (which has been removed since then) to "vex" in the HikaShop configuration, the popup in the backend wouldn't display properly on Joomla 4. We've made a patch to force popups to vex on Joomla 4, no matter what to avoid the problem, since we want to always use vex now for popups.
We made some modifications so that HikaShop doesn't add JS/CSS files in the Document when Joomla is loaded through the "cli" Application.
We've fixed a warning on PHP 8.1 with the Checkout workflow.
We fixed a warning with the new price form on PHP 8.1.
We fixed a warning message on PHP 8.1 with the file and image uploader in some cases.
Even with the "coupon percentage applied to products only" setting activated, the coupons restricted to products, could take into account other products in the cart instead of ignoring them.
The cells of the action "Display the results" were not editable in some cases.
The mincart/maxcart attributes of the hkshow and hkhide content tags didn't work properly in some cases.
Improvements (14)
The order_id column would be added to the export of mass actions even when the column was not selected. We've made a patch to avoid this.
When displaying the product edit form page on the backend, we now first check that the product exists. If not we redirect back to the products listing with an error message.
The out of stock filter now take into account the stock of the bundled products.
We modified the behavior of the contact form so that after the email has been sent, the user is redirected to the product page.
We've added the Itemid parameter in many places not used much on the frontend where they were missing in order to avoid issues in some cases on Joomla 4.
We now better handle the "override registration" setting when guest checkout is activated so that it's still possible to guest checkout with the registration override activated.
We've improved the hover X layout as it could sometimes reduce the images of the products on the listing if the images were not yet loaded when processing them.
We now better handle the rounding of prices during calculations when recalculating the total amount of an order in the backend order edit page.
We've updated the list of states (provinces) for Panama.
We've improved the update XML so that it works better with Joomla's update system.
We have made some adjustement for backend display around label and title options.
We added bootstrap 5 compatibility to the accordion capability of the HikaShop content module so that it can work fine on Joomla 4.
We added some extra debug capabilities to the USPS shipping plugin.
The USPS shipping plugin now takes into account commercial and commercial plus rates.
New features (10)
The PayPal Checkout plugin now has a new setting to be able to disable funding sources.
We've added the attributes maxproducts and minproducts to the hkshow / hkhide tags so that you can use a condition on the subtotal instead of the full total of the cart.
We've added a new button "new guest" in the customer area of the order details page so that merchants can enter the email address of a new guest to simultaneously create a guest user and assign it to the current order.
We've added a new setting to the USPS shipping plugin to be able to choose between the production and test environment.
We added the number of products in the order's additional information area.
We added a new column for the number of products on the orders listing.
We've added extra columns for the tax rates on the orders listing in the backend.
We've added the columns "coupon" and "coupon value" on the orders listing in the backend.
We've added a column for the shipping method in the orders listing in the backend.
We added shipping address and billing address columns to the order listing in the backend.
The generation of thumbnails could, in some cases generate a deprecated message on PHP 8.1
In some rare cases, after products from a warehouse would be removed from the cart, the checkout would require a new validation of the shipping method selection before allowing the finishing of the checkout process.
We fixed the compatibility between the Shipping Estimation plugin and the Australia Post v2 shipping plugin.
We fixed an error on the frontend which could happen when the minimum quantity per order configured in the product would be higher than the maximum quantity per order and the product's quantity input would be configured as "show select" (a dropdown).
HTML tags could potentially appear in the option dropdown on the product details page in some rare situations.
In some rare cases, displaying a cart in the backend where the user had already selected the UPS shipping method but had, for some reason no country selected in his shipping address could result in an error.
We've added some extra check to make sure a payment plugin won't process a payment in the onBeforeOrderCreate event if a previous plugin has asked to cancel the creation of the order.
The hreflang tags generated in the headers of the pages by the system languagefilter plugin of Joomla could be incorrect on listings and product details pages if different canonical URLs would be provided for each language for the category/product. Our fix prevents that from happening.
The imported orders could have empty addresses with VirtueMart in some cases.
After importing orders with shipping methods not available in HikaShop, an error would happen on PHP8 when displaying the order details in the backend.
When creating a new cart/wishlist in the backend, it was possible on PHP 8 and in some special cases, to generate a fatal error.
We fixed warnings messages on PHP8 with Joomla 3 on the frontend when products / categories wouldn't have an image defined for them.
The coupon value could be incorrect in some rare cases for coupons with the handling mode set to "override discounted products" and with several products taken into account by the coupon.
We fixed a warning when creating a new payment method following an improvement we've added in the 4.6.2.
We improved the installation of embedded plugins so that no warning would appear later on on PHP8 when sorting the Joomla extensions listing.
The import of product translations now handles properly the texts with line returns or double quotes.
In some cases the "display errors" setting of the shipping view of the checkout workflow wouldn't be taken into account properly.
The "Product quantity from" setting of the coupons would not work properly in some cases.
The extra blocks of the product edit page were not added to the variants form.
The reset button for the product edit page customization was not reseting the variant form customization.
The label of the image width in the menu item options had been wrongly changed to the block layout label of the option above it.
The fix added in HikaShop 4.6.2 to properly load the overrides for controllers and classses could result, in some rare cases in the wrong template being loaded on some pages of the frontend when the geolocation plugn would be used with its "after initialize" setting being activated.
We've added a fix to properly support the "invoice shop image address" setting being empty.
In some cases with several shipping/payment methods the taxes might be not properly taken into account during the calculations in the cart / checkout.
The language switcher integration now takes into account the custom sef name of the languages when set.
When using the VM2 import with a table prefix for the VM tables, it would result in an error during the import of the addresses.
Deleting the selected date in some options of the backend was not working on recent versions of Joomla 3 on some websites.
There was a conflict between the library included in the PayPal Checkout plugin and the header automatically added to the PHP files during the packaging process of HikaShop which resulted sometimes in a fatal error when using the PayPal checkout plugin.
The XML of the HikaShop dashboard module could cause issues with the error reporting activated when installing other extensions on Joomla 4 following a change in HikaShop 4.6.2
Removing all the selected category from a limit wouldn't be taken into account when saving the limit.
We fixed a warning on the publish/unpublish toggle of the shipping/payment methods on PHP8.
The uninstallation of HikaShop modules could generate a Fatal error on Joomla 4.2 with PHP 8 as the client attribute was not present in the manifest file.
The title of the wishlist page could be incorrect in some cases.
When indexing products in the Smart Search component on PHP8, if a variant was pointing to a non existing product, it would generate a fatal error, stopping the process.
The RSS and Atom fees would generate an error on Joomla 4.
The back button on the cart page will now correctly use the current menu Item.
The error messages on the password rules now display with the proper translation on Joomla 4.
The cookie modification in 4.6.2 to improve FireFox compatibility could lead to a fatal error on some versions of PHP.
The best customer reports could generate an error on PHP8 when no orders would be found.
The "move to new wishlist" action on the frontend cart/wishlist page didn't work properly.
In some rare circumstances, the use of the coupon free product plugin could lead to a MySQL query error when adding a product to the cart.
We fixed an error which could happen if you had configured the "user group after purchase" setting in at least one product of the order being confirmed and the HikaShop group plugin would be enabled without its settings having being saved once in the past on PHP8.
Improvements (35)
We've improved the robustness of the translation mechanism, especially when the original text strarts with a number.
It is now possible to add HTML in the "Format" setting of currencies. This can potentially allow you to separate the price and the currency inside different spans with a format like this for example: <span class="symbol">€</span><span class="price">%!n</span>
We've added an horizontal scrolling capability to the backend screens so that if the content needs a bigger width (like the order status listing page on small screens) it will allow you to scroll to see everything instead of going outside of the area.
We've added a new order status "returned" by default.
The publish & unpublish buttons on backend listings now have colors.
The Google Products plugin's menu item setting now uses a menu item selector instead of an input field in order to make it easier for the user to choose a menu item for the plugin.
The "Redirect Joomla registration to HikaShop plugin"'s setting is now a menu item selector instead of an input field so that you can more easily choose a menu item for it instead of having to search for the id of the menu item in the Joomla menu manager. We've also improved the tooltip for that setting to properly explain what the setting does.
We've changed the order of loading so that shipping plugins are loaded before payment plugins so that shipping plugins can cancel an order creation before a payment plugin could potentially process a payment.
We've added a new event onBeforeUserListing for the user listing in the backend. This will allow plugins to be able to modify the MySQL query loading the users there and add extra filters on the listing page, similarly to what's already possible on the orders listing.
The cart view of the Checkout workflow editor is now on two columns as it now has a lot of options. Incidentally, plugins adding extra blocks can now have their options in two columns with the "separator" type.
We improved the check database mechanism so that it works fine when plugins add new columns to the database during an update.
We've modified the class of the area for the additionals in the notification emails so that it's now possible to add CSS for only one additional without affecting the others.
The Google Products plugin now automatically provide the sale_price in the XML if a discount is applied on the price of the product. That way, Google will get both the price without discount and the price with discount and will be able advertise the products as being on sale.
We now force the capture of the money in "test mode" with the WorldPay Business gateway to make it easier to test payments with it.
It's now possible to use hikashop_getLayout for the layout of a hikashop plugin.
The close button for error messages on the frontend now also support Bootstrap 5.
We improved the error handling in the PayPal Checkout payment plugin.
We added extra data to the cart.empty javascript event so that developers can know what has been changed in the cart when it is emptied.
We've added a hidden option "form_custom" to be able to disable the form custom mechanism on the product edit page in case you don't need it and it create some problems.
The geolocation plugin is now deactivated by default to avoid doing useless processing on the pages when not necessary.
When the cart is being modified on the checkout, we now provide the data of the modified products to the javascript event so that third party javascript can use it.
We changed the "none" text of the tax category setting of variants to "as parent product" to better reflect the behavior of the system.
We now always display the thumbnails for the listing block layouts with "image" in their name, even if the "thumbnails" setting of the HikaShop configuration is turned off.
We've added the Central Bank of Russia in the list of available exchange rates feeds of the HikaShop rates auto update plugin.
We now force the creation of the address format override if missing in the template as long as it is different from the default in HikaShop. That way, when you change the template, as long as you save the HikaShop configuration once, it will add the address format override for it, instead of letting you believe it did while it didn't do it.
We've added a failsafe for the loading of the JavaScript libraries on Joomla 4 so that if something tries to load them before the web asset manager is loaded, it will wait to load them later on.
We've added the support for brands restriction for discounts.
Payment and shipping plugins can now have tooltips added to their options.
We've added a new event onGetCartProductsInfo(&$cart, &$ret) so that plugins can pass custom information to the javascript when responding to an add to cart AJAX request or a cart update AJAX request.
We changed the type of the field_default column in the hikashop_field table so that you can now write a text bigger than 255 characters in the default setting of custom fields.
We've improved the look of the PayPal Checkout buttons at the end of the checkout.
The RedShop import is not compatible with RedShop 3 (it would require writing a whole new import) so we've updated the text of the interface in HikaShop to reflect that.
We've added a "position" and an "icon" attributes to the additional deletable parameter so that plugins adding additionals to the cart can choose the placing of the delete icon and the icon to use.
We added the taxation_id of the created tax rule for the onAfterTaxationCreate event so that plugins can more easily act upon a tax rule creation.
The password checks now also support the "minimum lowercase" setting and also checks for spaces at the beginning or end and check the max length to replicate all of Joomla's new checks.
We've added jpeg, svg and webp as default file extensions allowed for new installations of HikaShop.
We've removed the swf extension as default file extensions allowed for new installations of HikaShop as it has become obsolete.
New features (9)
We've added a new "format" option for custom fields of the type "text", "textarea" and "WYSIWYG" so that you can prepend/append text around the value provided in the field when displaying the value of the field. This can be quite useful. For example, if you want to display a tracking URL in your emails, you can use a custom order field where you just provide the tracking number and use that format setting to add the HTML of the link around the tracking number.
We've reworked the order additional information edit popup so that it is clear what each input field is for and also improved the price / tax fields so that it is easier to use, without the need to manually calculate taxes.
We've updated the order product create/edit form popup on the order details page of the backend. We removed the tax input field and added instead a "price with tax" setting. That way, you don't have to manually calculate the tax when you want another price than the price by default. We also automatically calculate the price with tax based on the price without tax and the tax rate selected and vice-versa.
When options have several prices for different minimum quantities, the system will dynamically refresh the price displayed in the option dropdown/radio and will now also take it into account for the "price with options" display based on the quantity entered by the user in the quantity input field.
We've added a new option "Funding" to the PayPal checkout plugin so that you can select the payment methods you would like to be available to your customers if eligible (like Pay Later, bancontact, etc).
The input and select elements on the frontend now use the classes of Joomla 4 when using Joomla 4 instead of HikaShop's custom classes. We've made a system using constants which can be overridden either with options from the HikaShop configuration or plugins with the new event onHikashopDefineConstants.
The password fields on the different registration forms of HikaShop now display similarly to Joomla 4, with the requirement meter.
We have added new templates to allow you to change colors of your HikaShop emails, and select a new design to match your website style without having to modify the CSS of the emails default template.
We have add a new options to allow to add icon in the cart module view.
There was an error with the CardSave payment plugin on PHP 8.
In some rare cases, the delete button of the cart module would not work properly.
When following the "Display by color" tutorial, the colors wouldn't hide/display with the "Characteristics dynamic display" setting activated in the HikaShop configuration.
We fixed an error with the add to cart when using AJAX file custom fields in some cases with PHP 8.
The search feature could potentially break the HTML of the download button on the downloads listing of the frontend.
We fixed some warning message which could appear if the data stored in the database for the values of a custom field is invalid.
Accessing a menu item of the type HikaShop product comparison would generate an error on Joomla 4.
PHP 8 could generate errors during calculations if there were too many decimals on the numbers.
The custom user fields are now displayed properly on the Joomla profile edit page on the frontend for Joomla 4.
We fixed some warnings with the order detail page in the backend when the address custom fields would be all disabled.
We fixed a deprecated message on PHP 8 with the cart module when its settings were not saved once before being displays on the frontend.
helpers / controllers / classes overrides (for custom development) are now working properly on Joomla 4.
The Joomla language switcher module could output invalid URLs if the menu item used wouldn't have associated menu items for each languages on some pages.
We fixed an error which could happen on PHP 8 when a currency rate was set to 0 and the system was trying to convert a price from that currency to another currency.
When using the pagination number of elements per page dropdown on the entries listing in the backend, the entries wouldn't display anymore on the listing.
The "update the values" action could generate a "wrong type for this column" error in some cases with the "string" mode selected.
With many options it would be possible to have a conflict between two of them on the same product page leading to an option not refreshing the price of the product properly.
We fixed the country name for Bosnia and Herzegovina.
We fixed a deprecated message with filters on PHP 8.1.
We remove special characters when looking for product names from the alias in the URL in the router to avoid regex MySQL errors.
The filter selection on the filter module settings page can now handle more than 50 filters.
We fixed a deprecated message on PHP 8 with custom text fields when the value is null in the database.
The variants display on the products listing would aggregate all the values of all the products on the page instead of only the values of each product individually.
We've fixed a warning in some rare cases with the thumbnails display on the product details page.
We fixed a warning relative to the translation files loading.
We fixed an issue with the product edit interface and Joomla 4.2 related to tags.
The modification of the description of variants didn't work properly on Joomla 4 in some cases.
The first parameter of the onBeforeConfigSave event was not set properly by HikaShop.
When the "synchronized add to cart with cart" setting was activated while using the "tabular" layout, the add to cart wouldn't work properly.
The cart synchronization didn't work well with multiple dropdown, radio and checkbox custom item fields.
The characteristic values were not translated properly when using the "radio" display mode.
The translation popup of variants would display an error with the "Alias automatic filling" setting turned on even though it was working.
We've fixed a warning when deleting orders in the backend in some rare cases.
The limits didn't save properly in the backend interface since HikaShop 4.6.0
The toggle icons would display for the category translation popup even when Falang was not used to handle the translations while they should not appear.
The French and Russian translation files had a wrong translation key which would override the email sent by Joomla to the admin after a registration, which would create a problem on Joomla 4.
The actions "Change status", "Add an existing product" and "Change user group" didn't display properly their options until you saved the settings of the mass action.
We added a fix to properly take into account the custom data of shipping methods in some cases.
Improvements (43)
It is now possible to use the lowest tax rate for shipping fees.
The brand selector on the product edit page now displays as a tree as brands can be in several levels.
There is a new option to the FedEx shipping method to select the environment.
You can now use a comma as a decimal separator when entering the "Retail price" or when importing the "product_msrp" column.
The privacy consent integration now supports the "menu item" mode.
We changed the default "Frequency of the check for the carts" for new installations from 1 days to 20 minutes so that even on websites with many carts created by users, the system can still keep up with deleting the old carts.
Seletable filters will now be automatically hidden from display when there is no value to select in them.
We now display boolean custom fields following Joomla 4's style on Joomla 4.
We've added the support of the privacy consent plugin to the registration form displayed when you click on the link to register in the order notification emails after you placed an order as a guest if the corresponding option is activated.
We've added an "empty the cart" button to the cart detail page.
We've added "product_files" and "product_images" as reserved field column names as they are used internally and would create problems if used for a custom field.
Plugins can now add extra fields on the characteristic edit form in the backend.
The checkout login view will now display Joomla 4's social buttons (login with Google, Facebook, WebAuth, etc) mechanism. That way, users don't have to go through the registration procedure if social buttons are available (for example if they are added by Akeeba SocialLogin extension: https://extensions.joomla.org/extension/akeeba-sociallogin/ )
Payment plugin developers can now add an attribute "needCallbackFile" to their plugin class to have a callback file automatically created for them at the root of the website and they can use $this->getCallbackFilename() to get the filename. This can be used when the payment gateway restricts the number of characters or some special characters like ?, & or = for the callback URL for the payment notification. That way, when that callback file is called, it will automatically trigger their plugin's onPaymentNotification function.
We added a canonical URL header to the contact form page to make sure it's not flagged as duplicate content.
The orders created with taxes calculated by the TaxCloud plugin can now be modified in the HikaShop backend without loosing the tax information calculated by TaxCloud.
When the "synchronized add to cart" setting is activated in the HikaShop configuration is activated, you can directly update the quantity of the product from the "add to cart" button area on products listings and product details pages. So far even when reducing the quantity of the product in the cart, the notification box message would be "Product successfully added to the cart". We improved the system so that when the quantity is reduced it says instead "Product successfully removed from the cart" in order to improve user experience.
There is now a link back to the product details page on the product name of the product contact form.
If the stock of one of the selected options is not enough (or another limitation is hit for it), if the "group options with product" setting is activated in the HikaShop configuration, the add to cart of the whole product will be cancelled.
We've added the SameSite attribute to the cart and session cookies to avoid a warning to be displayed in the console of FireFox.
We now separate the "save" and the "save and close" buttons in the backend on Joomla 4 instead of having them stacked.
We've added logging capabilities to the "AIM" mode of the Authorize.net payment plugin.
We now allow HTML tags in the footer of the PDF generated by the PDF invoice plugin.
We've improved the code loading the custom fields on products listing to avoid errors with custom code in some rare cases.
We added a decimal to the exchange rate for new installations of HikaShop to be able to handle 6 decimals instead of 5.
We've added a hidden setting called redirect_url_when_registration_form_access_while_already_logged so that you can override the URL where the user will be redirected if he tries to access the HikaShop registration form while already logged in.
When the multilanguage edit mechanism is activated, for languages other than English, when HikaShop is being initialized, we now reload all the already loaded translation files without the English overrides so that English translation overrides don't interfer with the original texts of the HikaShop content when the base language of the content is another language than English.
The PayFast payment plugin included in HikaShop has been removed from HikaShop's install package. PayFast offers their own version of the plugin and it conflicts with it. People already using our version will still be able to continue using it even after updating their HikaShop. But new installations of HikaShop won't have the plugin added anymore and they'll be able to get it from PayFast.
We've added a new javascript event hkCustomFieldChanged which will be triggered when a custom field is modified.
Changing custom item fields on the product details page now triggers the hkContentChanged javascript event.
Plugins can now inject headers into emails in the onBeforeMailPrepare event by adding their headers to $mail->extraHeaders.
We've removed the SEO fields from the translation popup of variants as they don't make sense there.
We've added extra data display to the user edit form on the backend so that plugins can add extra elements to that interface.
We've improved the javascript loading mechanism so that on Joomla 4, it will skip it if the web asset manager has not yet been initialized by Joomla.
We've improved the categories filters so that if no category is selected, we still only display product categories in the filter as it doesn't make sense to display other category types.
It is now possible to configure transparent stripes for image thumbnails.
We improved the email history rendering of the emails to properly display images when added to the email as background-image.
We removed the "add new value" button for the "default" setting of custom fields as it doesn't work properly and is not necessary there.
We added an error message if the admin tries to use the "allow new value" setting while using his own MySQL query to load the values of a custom field as that's not possible.
We improved the reminder plugin so that for cart reminders the plugin takes into account the last modification date of orders (and not only the creation date) and to also use the "cart waiting period" as a buffer so that if an order was created/modified for that user less than that period of time (1 day by default) before the last cart modification we also don't send a reminder.
We've added a "make this address default" checkbox to the address form on the checkout when necessary to make it easier for the user and avoid having to go to the address manager to change the default address.
We've added some failsafe for reports not properly initialized in order to not get an error when editing the report.
We added a patch for the compatibility with 4SEF (successor of SH404SEF).
HikaShop will now trigger the events onPrepareModuleList, onAfterModuleList and onAfterCleanModuleList for the modules loaded under the product page so that other extensions, like Advanced Modules Manager can process them.
New features (7)
The translation mechanism now supports non latin languages for the original language with a new setting for it under the Languages tab of the HikaShop configuration.
The UPS plugin has a new option to be able to select between the production environment and the test environment.
We've added the "Sofinco" bank to the PayBox payment plugin.
The variants can now have their own tax category, overriding the main product's.
We added two settings in the HikaShop configuration to be able to enter your logo URL so that it will be added to the invoices generated by HikaShop.
We've added a new PayPal Checkout payment plugin to HikaShop. With it, you'll be able to use the latest "PayPal Checkout" offered by PayPal.
We've added a new option "Email favicon" under the Emails section of the HikaShop configuration so that you can configure a favicon to customize further the emails to your branding.