News:

You may pay someone to create your store, or you visit our seminar and become a professional yourself with the silver certification

Main Menu

Recent posts

#1
General Questions / widthdrawal button
Last post by p.barg - Yesterday at 15:12:51 PM
Hello,

From June 19, 2026, there will be the new obligation of a withdrawal button in EU shops.
Are there any plans to integrate a solution for this in upcoming Virtuemart versions?

Kind regards,

Petra
#2
Commercial Jobs / Need some help with my VM site
Last post by scottstreet - January 09, 2026, 01:25:47 AM

A recent update did not go well. And my backup is incomplete.

VM 4.4.6 11109
Joomla 5.4.1
PHP 8.1.33
GoDaddy hosting

I'm a neophyte, but have managed this site since 2009 with no problems.

Help!

1scottst at geemail dot commer please.

Scott
#3
Virtuemart Development and bug reports / Re: Coupon code not working pr...
Last post by Milbo - January 08, 2026, 22:34:35 PM
Great work Kuubs. I just added it the vm4 this way
// Reindex cart products to ensure sequential keys starting from 0 by Kuubs
if (isset($cart->products) && is_array($cart->products)) {
$cart->products = array_values($cart->products);
}

vDispatcher::trigger('plgVmOnUpdateCart',array(&$cart, &$force, &$html));

That should work like your plugin. And the info is in the core now and it can be enhanced later. Does that work for you?
#5
Virtuemart Development and bug reports / Re: Comma in alias
Last post by Milbo - January 08, 2026, 22:27:25 PM
Quote from: drejk on December 09, 2021, 11:03:29 AMSolution is to slightly modify a line in administrator/components/com_virtuemart/helpers/vmtable.php:

a) comment out line aroud line 1570 (add // in front) - this fixes links (this line shouldn't be there anyways. Btw. "$unicodeslugs" is practically the opposite of what it is called - it should be called "$transliterate" )
   //if($unicodeslugs)$this->{$slugName} = rawurlencode($this->{$slugName});

b) optional - if you want only alphanumeric characters, dashes and underscores add at next line
       $this->{$slugName} = preg_replace('~[^-a-z0-9_]+~', '', $this->{$slugName});



Do you mean this fix? I did not check it yet.So the problem is that you geht instead of the komma, a 2c? like here?
Get product alias "sample-product%2C-test".

sandomatyas I was not aware that the problme is not fixed.
#6
Virtuemart Development and bug reports / Re: [FIX] Use VirtueMart CSS +...
Last post by Milbo - January 08, 2026, 22:22:30 PM
Yes, that should be part of the new VirtueMart 5. And removing jQuery, it will be kept for extensions, but the core should run without. These are the two main parts left for vm5.
#7
The normal logic means the discount on the final price. Not in between. Depending on the tax system of your country, you discount either the price before tax (like in USA) or after tax (like in Europe). Your idea is to discount the baseprice, but not the variant addon price. It can make sense, for example if the variant includes a service, but is not the default. I cannot add your code without breaking the prices for all the others using the default logic.
#8
Virtuemart Development and bug reports / Re: Delete articles
Last post by Milbo - January 08, 2026, 22:06:49 PM
Vm5.4? do you mean joomla 5.4?
#9
Language/Translations / Re: Batch translation of produ...
Last post by Milbo - January 08, 2026, 21:58:25 PM
I wrote a new plugin which uses Deepl Translate to use their AI for translation. https://extensions.virtuemart.net/back-office/tools/deepl-translator-detail
#10
Language/Translations / Re: Language bug? Shipment, pa...
Last post by Milbo - January 08, 2026, 21:36:42 PM
Thank you stAn, indeed the problem is if the vm languages is loaded before the router set the new language var,... the vm lang code uses the set default language of joomla of the current run time.

I wonder if this code in virtuemart.php in the Fe, so (/components/com_virtuemart/virtuemart.php)
if (!class_exists( 'VmConfig' )) require(JPATH_ROOT .'/administrator/components/com_virtuemart/helpers/config.php');
VmConfig::$execTrigger = true;
VmConfig::loadConfig(false, false, true, true);
vRequest::setRouterVars();
$lang = vRequest::getCmd('lang','');
if(!empty($lang)){
vmLanguage::setLanguageByTag($lang);
}