Ich möchte die Newsletter-Anmeldung ohne Capcha - Spam hin, Spam her. Dazu liegt doch bestimmt irgendwo in einer Schublade eine kleine Step-by-Step Anleitung - oder? Besten Dank bereits jetzt!
Hallo, entschuldigen Sie bitte das ich hier mit einer Frage antworte. Scheinbar haben Sie schon gefunden wie das mit der Newsletteranmeldung funktioniert. Leider wird das nicht bei der Kontoerstellung angeboten. Auch später finde ich keine Möglichkeit. Über einen kleinen Tipp würde ich mich sehr freuen. Vielen Dank im Voraus, Alexander Barroi
Tja, es gibt leider keinen "Captcha-Schalter" für die Newsletter. Musste ich halt die newsletter.html und newsletter.php selber umbauen.
Hallo Manfred, mich interessiert dieses Thema auch. Vor allem die Abmeldung sollte ohne Capcha möglich sein. Hast Du schon eine Möglichkeit gefunden? Beste Grüße Matthias
Gibt es tatsächlich keine Möglichkeit, den Sicherheitscode bei der Newsletter-Abmeldung zu deaktivieren?
Moin! Leider gibt es derzeit keine Möglichkeit das Vorhaben updatesicher anzupassen. In der aktuellen Version 2.0.14.4 muss man zwei Dateien bearbeiten. Einmal die /templates/DeinTemplate/module/newsletter.html. Diese öffnen und den gesamten Inhalt in eine neu zu erstellende Datei im gleichen Unterordner mit dem Namen newsletter-USERMOD.html kopieren. Dann folgende Zeilen löschen oder auskommentieren: HTML: <div class="input vvcode"> <label>{$txt.label_captcha}</label> <img src="{$VVIMG_URL}" alt="" title="" width="240" height="50" /><br /> <input type="text" name="{$INPUT_CODE_NAME}" class="input-text" /> </div> Damit wird das Captcha zumindest erst einmal nicht mehr angezeigt. Da es eine USERMOD-Datei ist, ist das ganze hier an dieser Stelle auch noch updatesicher. Nur reicht das deaktivieren der Anzeige natürlich leider nicht aus, da die newsletter.php im Hauptverzeichnis nun meckert, dass das eingegebene mit dem angezeigten Captcha nicht übereinstimmt. Also öffnen wir uns auch diese Datei und suchen die Stelle: PHP: if ((strtoupper($_POST['vvcode']) == $_SESSION['vvcode'])) { und kommentieren diese und die damit verbundene else Anweisung sowie die abschliessende geschweifte Klammer kurzerhand aus. Für alle nicht updatesicheren Anpassungen habe ich mir angewöhnt diese gut zu kommentieren und mit einer Kombination die sonst nicht im Quellcode vorkommt zu versehen. In meinem Fall durch den Zusatz SKY-PC. Dann brauche ich später in meiner Entwicklungsumgebung immer nur nach diesem Zusatz suchen und bekomme alle Dateien angezeigt, in denen ich nicht updatesichere Änderungen vorgenommen habe. Also sieht der gesamte Abschnitt in der newsletter.php bei mir jetzt so aus: PHP: // SKY-PC Start Newsletter Captcha deaktiviert // Folgende Zeile auskommentiert: // if ((strtoupper($_POST['vvcode']) == $_SESSION['vvcode'])) { // SKY-PC End // EOF GM doesn't matter if capital or small letters if( $_POST['check'] == 'inp' ) { $check_mail_query = xtc_db_query("select customers_email_address, mail_status from ".TABLE_NEWSLETTER_RECIPIENTS." where customers_email_address = '".xtc_db_input($_POST['email'])."'"); if (!xtc_db_num_rows($check_mail_query)) { if (isset ($_SESSION['customer_id'])) { $customers_id = $_SESSION['customer_id']; $customers_status = $_SESSION['customers_status']['customers_status_id']; $customers_firstname = $_SESSION['customer_first_name']; $customers_lastname = $_SESSION['customer_last_name']; } else { $check_customer_mail_query = xtc_db_query("select customers_id, customers_status, customers_firstname, customers_lastname, customers_email_address from ".TABLE_CUSTOMERS." where customers_email_address = '".xtc_db_input($_POST['email'])."'"); if (!xtc_db_num_rows($check_customer_mail_query)) { $customers_id = '0'; $customers_status = '1'; $customers_firstname = TEXT_CUSTOMER_GUEST; $customers_lastname = ''; } else { $check_customer = xtc_db_fetch_array($check_customer_mail_query); $customers_id = $check_customer['customers_id']; $customers_status = $check_customer['customers_status']; $customers_firstname = $check_customer['customers_firstname']; $customers_lastname = $check_customer['customers_lastname']; } } $sql_data_array = array ('customers_email_address' => xtc_db_input($_POST['email']), 'customers_id' => xtc_db_input($customers_id), 'customers_status' => xtc_db_input($customers_status), 'customers_firstname' => xtc_db_input($customers_firstname), 'customers_lastname' => xtc_db_input($customers_lastname), 'mail_status' => '0', 'mail_key' => xtc_db_input($vlcode), 'date_added' => 'now()'); xtc_db_perform(TABLE_NEWSLETTER_RECIPIENTS, $sql_data_array); $info_message = TEXT_EMAIL_INPUT; $t_form_send = true; // BOF GM_MOD: xtc_php_mail(EMAIL_SUPPORT_ADDRESS, EMAIL_SUPPORT_NAME, xtc_db_input($_POST['email']), '', '', EMAIL_SUPPORT_REPLY_ADDRESS, EMAIL_SUPPORT_REPLY_ADDRESS_NAME, '', '', TEXT_EMAIL_SUBJECT, $html_mail, $txt_mail); } else { $check_mail = xtc_db_fetch_array($check_mail_query); if ($check_mail['mail_status'] == '0') { $info_message = TEXT_EMAIL_EXIST_NO_NEWSLETTER; // BOF GM_MOD: xtc_php_mail(EMAIL_SUPPORT_ADDRESS, EMAIL_SUPPORT_NAME, xtc_db_input($_POST['email']), '', '', EMAIL_SUPPORT_REPLY_ADDRESS, EMAIL_SUPPORT_REPLY_ADDRESS_NAME, '', '', TEXT_EMAIL_SUBJECT, $html_mail, $txt_mail); } else { $info_message = TEXT_EMAIL_EXIST_NEWSLETTER; } } } elseif( $_POST['check'] == 'del' ) { $check_mail_query = xtc_db_query("select customers_email_address from ".TABLE_NEWSLETTER_RECIPIENTS." where customers_email_address = '".xtc_db_input($_POST['email'])."'"); if (!xtc_db_num_rows($check_mail_query)) { $info_message = TEXT_EMAIL_NOT_EXIST; } else { $del_query = xtc_db_query("delete from ".TABLE_NEWSLETTER_RECIPIENTS." where customers_email_address ='".xtc_db_input($_POST['email'])."'"); // BOF GM_MOD: xtc_db_query("update ".TABLE_CUSTOMERS." set customers_newsletter = '0' where customers_email_address = '".xtc_db_input($_POST['email'])."'"); $info_message = TEXT_EMAIL_DEL; $t_form_send = true; } } else { $info_message = TEXT_NO_CHOICE; } // SKY-PC Start Newsletter Captcha deaktiviert: // Folgende Zeilen auskommentiert: //} //else //{ // $info_message = TEXT_WRONG_CODE; //} // SKY-PC End Anschliessend die newletter.php und die templates/DeinTemplate/module/newsletter-USERMOD.html hochladen. Die newsletter.php dabei überschreiben. Cache löschen nicht vergessen und die Captcha-Abfrage beim Ein- und Austragen des Newsletter entfällt.
Man kann aber auch den ungenutzten "Gästebuch" Schalter nutzen! In der newsletter.php einfügen - zur Abfrage in der "..\module\newsletter-USERMOD.html": Code: $smarty->assign('GM_GUESTBOOK_VVCODE', gm_get_conf('GM_GUESTBOOK_VVCODE')); Dann weiter unten erweitern: Code: if (($_POST['check'] == 'inp') && (strtoupper($_POST['vvcode']) == $_SESSION['vvcode']) || gm_get_conf('GM_GUESTBOOK_VVCODE') == 'false') { Und fertig ist die Laube - mit der Option, datt Dingens bei Bedarf wieder einzuschalten.
Autsch und gerade gesehen: Dank meiner Blindheit tummeln wir uns gerade alle in dem Forum für das alte Gambio GX herum.
Nachdem ich im Liveshop keinen Newsletter aktiviert habe, habe ich aus Interesse im Testshop (v2.0.14.4 r12076) rumprobiert. Zur Kontoerstellung wird bei der Newsletteranmeldung weder als Gast noch als Standardkunde ein Captcha abgefragt. Gast bekommt kein Freischaltmail und im Gastkonto ist Newsletter auf "nicht abonniert" Standardkunde bekommt Mail mit Link, Freischalten klappt und Konto ist beim NL auf "abonniert" So weit, so halb gut. Es gibt aber im Kundenbereich des Standardkunden auch keine Möglichkeit sich vom Newsletter abzumelden. Interessant..... Ist das überhaupt vorgesehen? Oder kann sich der Kunde erst nach Erhalt des ersten NL beim Unsubscribe Button rauslöschen?