Generic selectors
Ακριβή αποτελέσματα
Αναζήτηση στους τίτλους
Αναζήτηση στο περιεχόμενο
Post Type Selectors
Αναζήτηση σε άρθρα
Αναζήτηση σε σελίδες
Φίλτρο ανά κατηγορία
.net
Css
jQuery
Linux
Microsoft Excel
PHP
Power BI
Prestashop
Projects
Software
SQL
T-Edit
Tips
Wordpress
Επιστήμες

Εισαγωγή recaptcha σε Prestashop

Όταν οι smammers μας σπάνε τα νεύρα στο prestashop τότε χρησιμοποιούμε το recapcha της Google. Στις περισσότερες περιπτώσεις θα μας προστατέψει από ενοχλητικά μηνύματα.

1. Στο contact-form.tpl του template μας πάμε ακριβώς πριν το submit button. Κάτι σαν το κάτω κομμάτι κώδικα.

<div class="submit">
 <button type="submit" name="submitMessage" id="submitMessage" class="button"><span>{l s='Send'}<i class="icon-chevron-right right"></i></span></button>
 </div>
 </form>

Προσθέτουμε τις δύο γραμμές (όπου key το key από το recaptcha)

<script src='https://www.google.com/recaptcha/api.js'></script>
<div class="g-recaptcha" data-sitekey="key"></div>


2. Πηγαίνουμε στο controllers/front/ContactController.php ή στο αντίστοιχο override.
if (Tools::isSubmit('submitMessage')) {
 $extension = array('.txt', '.rtf', '.doc', '.docx', '.pdf', '.zip', '.png', '.jpeg', '.gif', '.jpg');
 $file_attachment = Tools::fileAttachment('fileUpload');
 $message = Tools::getValue('message'); // Html entities is not usefull, iscleanHtml check there is no bad html tags.
 $id_order = (int)$this->getOrder();
 if (!($from = trim(Tools::getValue('from'))) || !Validate::isEmail($from)) {
 $this->errors[] = Tools::displayError('Invalid email address.');
//ΠΡΟΣΘΕΤΟΥΜΕ ΑΥΤΟ ΤΟ ΚΟΜΜΑΤΙ  ΑΠΟ ΕΔΩ
 } elseif (!($gcaptcha = (int)(Tools::getValue('g-recaptcha-response')))) {
 $this->errors[] = Tools::displayError('Captcha error');
// ΜΕΧΡΙ ΕΔΩ
 
Αφήστε μια απάντηση0