opencart disable captcha on product reviews
Накратко..искам да разкарам неработещата капча при писане на ревю на продукт в OpenCart. За целта реших да използвам един модул от сайта им , който на пръв поглед свърши работата. Да ама не.. Днес установих че има проблем при отваряне на продукти от началната страница. Проблема е че дава бял екран при кликването на който и да е от продуктите от началната страница. В логовете излиза следното:
2014/02/19 16:26:06 [error] 26413#0: *1128 FastCGI sent in stderr: "PHP message: PHP Fatal error: Call to undefined method ControllerProductProduct::getPath() in /var/www/clients/client4/web12/web/vqmod/vqcache/vq2-catalog_controller_product_product.php on line 203" while reading response header from upstream
След като разкарах модула Disable Captcha For Reviews [VQMOD] проблема с бялата страница се оправи.
Поради тази причина ми се наложи да търся друг вариянт за решаване на проблема ми.
Ето и моя вариянт за решаване на проблема чрез изтриване на няколко реда в няколко файла от OpenCart-a. Важно е да се направи бекъп преди да се започне са манипулацията 😆
1. Отваряме /catalog/view/theme/default/template/product/product.tpl и изтриваме следните редове:
<img id="captcha" src="index.php?route=product/product/captcha" alt="" /> $('input[name=\'captcha\']').val('');
2. Отваряме /catalog/controller/product/product.php и изтриваме следните редове:
$this->data['entry_captcha'] = $this->language->get('entry_captcha'); if (empty($this->session->data['captcha']) || ($this->session->data['captcha'] != $this->request->post['captcha'])) { $json['error'] = $this->language->get('error_captcha'); }
И… воала! Вече не ни излиза досадната капча! 🙂
PS. Направих същото и за контакт формата, тъй че ако на някой му трябва, мога да напиша и за него как става номера с махането на гадната captcha.