在联系表 7 成功消息中允许 html 标签 (wpcf7-messages[mail_sent_ok])

allow html tags in contact form 7 success mesage (wpcf7-messages[mail_sent_ok])

我想在成功消息中使用 html。

我尝试了这个但没有用。

add_filter('wpcf7_mail_sent_ok', 'my_succs_message_alter', 1, 2);
function my_succs_message_alter($message, $args){
    $message = htmlspecialchars_decode($message);
    return $message;
}

我的目的;提交显示元素或模板后。但是如果 subject == "aa" 显示 aa 模板,如果 subject == "bb" 显示 bb 模板..等等。我这样做。我在成功消息中打印它。只有一个问题“允许html”。

我找到了答案:

php:

add_filter('wpcf7_display_message', function($msg){
  $custom_html_message = '<h2>html code..</h2>';
  return htmlentities($custom_html_message);
}, 10, 2);

js:

var wpcf7Elm = document.querySelector( '.wpcf7' );
wpcf7Elm.addEventListener( 'wpcf7submit', function( event ) {
    setTimeout(function(){
        const successMessage = document.querySelector('.wpcf7-response-output');
        const htmlMessage = htmlEntitiesDecode(successMessage.innerText);
        successMessage.innerHTML = htmlMessage;
    }, 200);
}, false );

function htmlEntitiesDecode(str) {
    return jQuery('<textarea />').html(str).text();
}