Wordpress

Ist der Server beim Webhoster richtig konfiguriert, klappt der Mailversand auch meistens problemlos über Wordpress. Wenn nicht..

Es gibt einige Plugins z.B. WP Mail SMTP für Wordpress.

Oder man legt selbst Hand an.

/**
* Diese Funktion verbindet wp_mail mit dem authentifizierten SMTP-Server.
* Die Kostanten werden in der wp-config.php gesetzt.
**/
add_action( 'phpmailer_init', 'send_smtp_email' );
function send_smtp_email( $phpmailer ) {
  $phpmailer->isSMTP();
  $phpmailer->Host       = SMTP_HOST;
  $phpmailer->SMTPAuth   = SMTP_AUTH;
  $phpmailer->Port       = SMTP_PORT;
  $phpmailer->Username   = SMTP_USER;
  $phpmailer->Password   = SMTP_PASS;
  $phpmailer->SMTPSecure = SMTP_SECURE;
  $phpmailer->From       = SMTP_FROM;
  $phpmailer->FromName   = SMTP_NAME;
}

 

/** Diese Konstanten werden in  der wp-config.php VOR der Konstante ABSPATH definiert. **/
define( 'SMTP_USER',   'user@example.com' );    // Username für die SMTP-Authentifizierung
define( 'SMTP_PASS',   'smtp password' );       // Passwort für die SMTP-Authentifizierung
define( 'SMTP_HOST',   'smtp.example.com' );    // Der Hostname des Mailservers
define( 'SMTP_FROM',   'website@example.com' ); // SMTP Von E-Mail-Adresse
define( 'SMTP_NAME',   'e.g Website Name' );    // SMTP Von Name
define( 'SMTP_PORT',   '25' );                  // SMTP-Portnummer - wahrscheinlich 25, 465 oder 587
define( 'SMTP_SECURE', 'ssl' );                 // Zu verwendende Verschlüsselung - ssl oder tls
define( 'SMTP_AUTH',    true );                 // SMTP-Authentifizierung (true|false)
define( 'SMTP_DEBUG',   0 );                    // Für Debugging auf 1 oder 2 setzen

 

Klickt man im Wordpress-Backend in einem Formidable Formular auf ein Feld wird darunter die ID des Feldes angezeigt. "Field Settings (ID 24)"

Mit dieser ID kann man in seinem Plugin oder natürlich auch in anderem PHP-Code der aufgerufen wird dieses Feld ansprechen. In diesem Beispiel lesen wir einen Get Parameter aus,und verwenden ihn oder ein vorher gesetztes Cookie.

 add_filter('frm_get_default_value', 'my_custom_default_value', 10, 2);
  function my_custom_default_value($new_value, $field){
    $getWaNumber = filter_input(INPUT_GET, 'wa', FILTER_SANITIZE_STRING);
    $waCookie = filter_input(INPUT_COOKIE, 'WaNr');
    if($field->id == 24){ // id from the hidden field
      $new_value = $waCookie;
      if(!empty($getWaNumber)){
        $new_value = $getWaNumber;
      }
    }
    return $new_value;
  }

 

Das Cookie könnte z.B. so vorher gesetzt werden:

  $waNumber = 123456;
  $waCookie = filter_input(INPUT_COOKIE, 'WaNr');
  if(empty($waCookie)){
    setcookie('WaNr', $waNumber, time() + 3600 * 12, '/');
  }

  $getWaNumber = filter_input(INPUT_GET, 'wa', FILTER_SANITIZE_STRING);
  if(!empty($getWaNumber)){
    setcookie('WaNr', $getWaNumber, time() + 3600 * 12, '/');
  }

 

Will man sein Wordpress zusätlich über eine .htaccess sichern, geht das so:

if(is_home() and !is_paged() or is_front_page()){
 // homepage = true;
}

 Oder negiert

if(!is_home() and !is_front_page() or is_paged() ){
..
}