Столкнулся с той же проблемой, удалось решить добавлением кода, который пропускает utm-метки на карточке товара (по крайней мере для OC 2.3 заработало):
было:
case 'newsblog/article':
if (isset($data['newsblog_article_id'])) {
$tmp = $data;
$data = array();
if ($this->config->get('config_seo_url_include_path')) {
$data['newsblog_path'] = $this->getPathBynewsblogArticle($tmp['newsblog_article_id']);
if (!$data['newsblog_path']) return $link;
}
$data['newsblog_article_id'] = $tmp['newsblog_article_id'];
}
break;
стало:
case 'newsblog/article':
if (isset($data['newsblog_article_id'])) {
$tmp = $data;
$data = array();
if ($this->config->get('config_seo_url_include_path')) {
$data['newsblog_path'] = $this->getPathBynewsblogArticle($tmp['newsblog_article_id']);
if (!$data['newsblog_path']) return $link;
}
$data['newsblog_article_id'] = $tmp['newsblog_article_id'];
//remove the utm trim
$seo_pro_utm = preg_replace('~\r?\n~', "\n", $this->config->get('config_seo_pro_utm'));
$allowed_parameters = explode("\n", $seo_pro_utm);
foreach($allowed_parameters as $ap) {
if (isset($tmp[trim($ap)])) {
$data[trim($ap)] = $tmp[trim($ap)];
}
}
}
break;