我有一个自定义的前端页面,用户可以从中发帖。所有都可以正常工作,但如果有多个字段为空,则所有空字段的错误应一起显示。现在代码只显示它检测到的第一个空字段的错误。代码为:
$errors = new WP_Error();
if (isEmptyString($title_stripped))
$errors->add(\'empty_title\', __(\'Please enter a title\'));
if (isEmptyString($description_stripped))
$errors->add(\'empty_desc\', __(\'Enter a breif description\'));
if (isEmptyString($content_stripped))
$errors->add(\'empty_content\', __(\'Please enter your article here\'));
return $errors;
Edit : Solved
抱歉打扰了。这是我的另一个函数,它将错误限制为只回显一次。以下是之前的代码:
function display_message( $message = false ) {
if( is_wp_error( $message ) ) {
echo \'<div class="error"><p>\' . $message->get_error_message() . \'</p></div>\';
}
我把它也改了,效果很好:
function display_message( $message = false ) {
if( is_wp_error( $message ) ) {
echo \'<div class="error"><p>\';
foreach ( $message->get_error_messages($code) as $error ) {
echo $error . "<br />\\n";
}
echo \'</p></div>\';
}
最合适的回答,由SO网友:Harjeet Singh 整理而成
抱歉打扰了。这是我的另一个函数,它将错误限制为只回显一次。以下是之前的代码:
function display_message( $message = false ) {
if( is_wp_error( $message ) ) {
echo \'<div class="error"><p>\' . $message->get_error_message() . \'</p></div>\';
}
我把它也改了,效果很好:
function display_message( $message = false ) {
if( is_wp_error( $message ) ) {
echo \'<div class="error"><p>\';
foreach ( $message->get_error_messages($code) as $error ) {
echo $error . "<br />\\n";
}
echo \'</p></div>\';
}