WordPress beendet die Ausführung von Code nach der require () -Methode

Ich versuche SMTP für mein benutzerdefiniertes Kontaktformular einzurichten.

Ich habe den neuesten PHPMailer-Ordner in meinen Themenordner gestellt.

Ich habe eine Seitenvorlage für das Kontaktformular erstellt und den Code für das Kontaktformular darin hinzugefügt und darunter den SMTP-Code wie unten hinzugefügt.

SMTPDebug = 3; // Enable verbose debug output $mail->isSMTP(); // Set mailer to use SMTP $mail->Host = 'localhost'; // Specify main and backup SMTP servers $mail->SMTPAuth = false; // Enable SMTP authentication //$mail->Username = ''; // SMTP username //$mail->Password = ''; // SMTP password //$mail->SMTPSecure = 'tls'; // Enable TLS encryption, `ssl` also accepted $mail->Port = 25; // TCP port to connect to $mail->setFrom($email, $sendername); $mail->addAddress('test@gmail.com', 'Joe User'); // Add a recipient //$mail->addAddress('ellen@example.com'); // Name is optional $mail->addReplyTo($email, $sendername); $mail->addCC('test@testmail.com'); //$mail->addBCC('bcc@example.com'); //$mail->addAttachment('/var/tmp/file.tar.gz'); // Add attachments //$mail->addAttachment('/tmp/image.jpg', 'new.jpg'); // Optional name $mail->isHTML(true); // Set email format to HTML $mail->Subject = 'Test Mail'; $comment = $comment . "\r\n
" . "
\r\nIP Address: " . $id . "
\r\nUser Agent: " . $browser . "
\r\nUser Agent: " . "
\r\nReferrer: " . $referrer . "
\r\nCity: " . $city . "
\r\nRegion: " . $region . "
\r\nCountry: " . $country . "
\r\nLatitude: " . $latitude . "
\r\nLongitude: " . $longitude; $mail->Body = $comment; $mail->AltBody = $comment; if($sendernameErrFlag == 0 && $emailErrFlag == 0 && $subjectErrFlag == 0 && $commentErrFlag == 0) { $mail->send(); echo "hi"; $pagelink = the_permalink(); echo '
'; //echo 'alert("Message sent successfully!!!");'; } else { $sendernameErrFlag = $emailErrFlag = $subjectErrFlag = $commentErrFlag = 2; } ?>

Aber wenn ich das Kontaktformular abschicke, stoppt wordpress das Ausführen von Code, wenn es die Zeile mit required () erreicht. Jeder Code, der darunter geschrieben wird, wird nicht ausgeführt.

Wenn ich require () über das Formular setze, wird das Formular auch nicht auf der Seite angezeigt. Wenn ich es in den Header lege, wird die ganze Seite nicht angezeigt.

Was scheint hier das Problem zu sein? Warum akzeptiert und führt WordPress das require () nicht aus?

Solutions Collecting From Web of "WordPress beendet die Ausführung von Code nach der require () -Methode"

Mir ist aufgefallen, dass require(), require_once(), include() and include_once() Methoden require(), require_once(), include() and include_once() irgendwie nicht funktionierten. Die Dateien, die mit diesen Methoden aufgerufen wurden, wurden nicht aufgerufen, und der Code wurde ab diesem Zeitpunkt nicht mehr ausgeführt.

Nach vielem Googeln und F & E habe ich keine Lösung gefunden, die oben genannten Methoden zu funktionieren.

Also entschied ich mich, in die Architektur des tweentysixteen Themes zu schauen und heraus zu finden, dass es eine eingebaute function von WordPress gab, die früher andere PHP-Dateien tweentysixteen .

Also dachte ich daran, die class.PHPMailer.php and PHPMailerAutoload.php Dateien zu verwenden. Wenn die Linien geändert wurden

 require("PHPMailer/class.PHPMailer.php"); require 'PHPMailer/PHPMailerAutoload.php'; 

in meinem Code zu,

 get_template_part('PHPMailer/class.PHPMailer'); get_template_part('PPHPMailer/PHPMailerAutoload'); 

und schließlich konnte ich das Problem beheben und das Kontaktformular begann zu arbeiten.