정의되지 않은 함수 wp_mail 호출
안녕하세요 저는 Cron 웹 페이지에서 Wordpress의 이 기능을 사용하고 있으며 제 이메일에 이 오류를 발생시키고 있습니다.
치명적 오류: /home/meusite/public_html/wp-content/temes/escotec/page-cron.php의 정의되지 않은 함수 wp_mail()을 호출합니다.
여기 코드가 있습니다.
foreach($inscricoes as $key => $item){
$emailSent = false;
$emailTo = "$item->getEmail()";
//echo "..1";
$subject = '[Escotec]: Dados para pagamento de inscrição ';
$body = "Parabéns $inscricao->nome, sua inscrição no curso ".$item->getTurmas()[0]->getCurso()->getNome()." foi efetuada. <p>Para concluir o pagamento da inscrição clique no link abaixo ou cole-o diretamente na barra de endereços de seu Navegador: </p><br>";
$body .= "<a href=\"http://escotecnordeste.com.br/pagamento/?email=".$item->getEmail()."&pedido=".$item->getPagamentoId()."\" target=\"_blank\">http://escotecnordeste.com.br/pagamento/?email=".$item->getEmail()."&pedido=".$item->getPagamentoId()."</a>";
$headers = 'From: Escotec Nordeste <escotecnordeste@gmail.com>' . "\r\n" . 'Reply-To: ' . 'escotecnordeste@gmail.com';
wp_mail($emailTo, $subject, $body, $headers);
$emailSent = true;
// http://escotecnordeste.com.br/pagamento/?email=leandrocezar.dev@gmail.com&pedido=11
// Codificar envio do e-mail
if ($emailSent) {
// Atualizar registro do pedido para email_enviado = 'S'
InscricaoDAO::RegistraEnvioEmail($item->getPagamentoId());
}
}
Ty가 도움을 요청
아래 코드를 파일에 추가해 주세요.전화하신 곳wp_mail()
기능.
파일의 맨 위에 이 코드를 추가합니다.
require_once("../../../wp-load.php");
또는 기능 변경wp_mail()
로.mail()
함수 wp_mail()을 호출하고 있습니다.wp_mail()은 다음에 포함될 수 있습니다.wp-load.php
.
require_once("wp-load.php");
토니가 제공한 해결책은 나에게 효과가 있다.내 코드:
function your_function_name() {
$to =' your@email.com';
$subject = 'The subject';
$body = 'The email body content';
$headers = array('Content-Type: text/html; charset=UTF-8');
wp_mail( $to, $subject, $body, $headers );
}
add_action( 'wp_loaded', 'your_function_name' );
wp_mail() 함수는 아직 정의되지 않았습니다.이 페이지의 코드가 이것뿐입니까?wp_mail()은 이 파일에 있습니다.wp-mail/pluggable.dlls함수를 호출하기 전에 해당 함수를 포함해야 합니다.
wp-load가 필요합니다.php, 그렇게 함수는 문제없이 사용할 수 있고, 그 파일은 워드프레스의 모든 함수를 로드합니다.
경로가 /home/meusite/public_html/wp-content/temes/escotec/page-cron.php인 경우 다음 경로를 사용하여 wp-load를 요구합니다.
require_once( dirname(__FILE__) . '/wp-load.php' );"
foreach($inscricoes as $key => $item){
$emailSent = false;
$emailTo = "$item->getEmail()";
//echo "..1";
$subject = '[Escotec]: Dados para pagamento de inscrição ';
$body = "Parabéns $inscricao->nome, sua inscrição no curso ".$item->getTurmas()[0]->getCurso()->getNome()." foi efetuada. <p>Para concluir o pagamento da inscrição clique no link abaixo ou cole-o diretamente na barra de endereços de seu Navegador: </p><br>";
$body .= "<a href=\"http://escotecnordeste.com.br/pagamento/?email=".$item->getEmail()."&pedido=".$item->getPagamentoId()."\" target=\"_blank\">http://escotecnordeste.com.br/pagamento/?email=".$item->getEmail()."&pedido=".$item->getPagamentoId()."</a>";
$headers = 'From: Escotec Nordeste <escotecnordeste@gmail.com>' . "\r\n" . 'Reply-To: ' . 'escotecnordeste@gmail.com';
wp_mail($emailTo, $subject, $body, $headers);
$emailSent = true;
// http://escotecnordeste.com.br/pagamento/?email=leandrocezar.dev@gmail.com&pedido=11
// Codificar envio do e-mail
if ($emailSent) {
// Atualizar registro do pedido para email_enviado = 'S'
InscricaoDAO::RegistraEnvioEmail($item->getPagamentoId());
}
}
이 방법은 효과가 있었습니다.
add_action( 'wp_loaded', 'cron_time' );
그것은 어디에서나 효과가 있고 거의 항상 그리고 특히 아약스에 효과가 있다.
워드프레스 코어 파일은 포함하지 마십시오.그것은 나쁜 습관이다.다음과 같이 합니다.
require_once( dirname(__FILE__) . '/wp-load.php' );
언급URL : https://stackoverflow.com/questions/31293780/call-to-undefined-function-wp-mail
'programing' 카테고리의 다른 글
AJAX를 사용하는 jQuery Select2 컨트롤에 동적으로 항목 추가 (0) | 2023.02.15 |
---|---|
리액트 네이티브는 왜 자신을 정당화하지 않는가? (0) | 2023.02.15 |
JSXtransformer의 TD 태그 몇 개를 올바르게 랩하는 방법 (0) | 2023.02.11 |
JSON.net: 기본 컨스트럭터를 사용하지 않고 역직렬화하려면 어떻게 해야 합니까? (0) | 2023.02.11 |
jQuery. 이해 시 (0) | 2023.02.11 |