Stalo se vám po aktualizaci na VirtueMart 3.6.6 nebo 3.6.8, že stránka produktu v eshopu přestala fungovat a místo ní se zobrazuje následující obsah chyba Error message data: 1 Call to undefined function vmdebug() in file: ..administrator/components/com_virtuemart/helpers/vmlanguage.php line: 274?
Zřejmě také používáte plugin Custom Fields For All od BreakDesigns pro tvorbu pokročilých vlastních polí. V tomto článku vám poradím, jak tento problém vyřešit.
Důvodem je nekompatibilita pluginu pro tvorbu vlastních polí s nejnovější verzí VirtueMartu. Nareportovala jsem to Sakisovi, ale než to upraví, můžete využít tuto úpravu, ale funguje to jen od verze VirueMart 3.6.x
Je třeba upravit soubor plugins\system\customfieldsforallbase\bootstrap.php
if (! class_exists('\vmDefines')) {
require_once (JPATH_ADMINISTRATOR . DIRECTORY_SEPARATOR . 'components' . DIRECTORY_SEPARATOR . 'com_virtuemart' . DIRECTORY_SEPARATOR . 'helpers' . DIRECTORY_SEPARATOR . 'config.php');
//Virtuemart changes the file structure in 3.4.3 for vmDefines
if (! class_exists('\vmDefines')) {
require_once (JPATH_ADMINISTRATOR . DIRECTORY_SEPARATOR . 'components' . DIRECTORY_SEPARATOR . 'com_virtuemart' . DIRECTORY_SEPARATOR . 'helpers' . DIRECTORY_SEPARATOR . 'vmdefines.php');
}
\vmDefines::defines();
}
na
if (! class_exists('\vmDefines')) {
require_once (JPATH_ADMINISTRATOR . DIRECTORY_SEPARATOR . 'components' . DIRECTORY_SEPARATOR . 'com_virtuemart' . DIRECTORY_SEPARATOR . 'helpers' . DIRECTORY_SEPARATOR . 'config.php');
VmConfig::loadConfig();
//Virtuemart changes the file structure in 3.4.3 for vmDefines
if (! class_exists('\vmDefines')) {
require_once (JPATH_ADMINISTRATOR . DIRECTORY_SEPARATOR . 'components' . DIRECTORY_SEPARATOR . 'com_virtuemart' . DIRECTORY_SEPARATOR . 'helpers' . DIRECTORY_SEPARATOR . 'vmdefines.php');
}
\vmDefines::defines();
}
Řešení vychází z tohoto vlákna na fóru Virtuemart.net.