数据验证/清理回调函数
Data validation / Sanitization callback function
我在我的 WP 主题的定制器中添加了一个部分,允许用户更改主题第一页上显示的类别。但是,在使用 Theme Check 插件进行检查时,它返回了以下错误:
必需:找到没有清理回调函数的定制程序设置。每次调用 add_setting() 方法都需要传递一个清理回调函数。
我不知道如何将此功能添加到我的代码中。如果你能帮忙,这里是代码:
提前致谢!
默认情况下,定制器不处理用户输入值的验证和清理。因此,必须在将这些值保存到数据库之前对其进行清理。
WP_Customizer 对象的 add_setting() 方法接受一个 'sanitize_callback' 参数,可用于指定清理回调。因此,在每个 add_setting() 调用中,添加清理回调函数。
$wp_customize->add_setting( 'first_category', array(
'default' => 'Uncategorized', // The default category name.
'sanitize_callback' => 'ys_sanitize_category', // Sanitize callback function name
) );
清理回调函数:
function ys_sanitize_category( $category ) {
if ( ! in_array( $category, array( 'Uncategorized', 'Blogposts', 'News' ) ) ) { // Add the names of your categories here. Use get_categories() to fetch them dynamically.
$category = 'Uncategorized';
}
return $category;
}
我在我的 WP 主题的定制器中添加了一个部分,允许用户更改主题第一页上显示的类别。但是,在使用 Theme Check 插件进行检查时,它返回了以下错误:
必需:找到没有清理回调函数的定制程序设置。每次调用 add_setting() 方法都需要传递一个清理回调函数。 我不知道如何将此功能添加到我的代码中。如果你能帮忙,这里是代码:
提前致谢!
默认情况下,定制器不处理用户输入值的验证和清理。因此,必须在将这些值保存到数据库之前对其进行清理。
WP_Customizer 对象的 add_setting() 方法接受一个 'sanitize_callback' 参数,可用于指定清理回调。因此,在每个 add_setting() 调用中,添加清理回调函数。
$wp_customize->add_setting( 'first_category', array(
'default' => 'Uncategorized', // The default category name.
'sanitize_callback' => 'ys_sanitize_category', // Sanitize callback function name
) );
清理回调函数:
function ys_sanitize_category( $category ) {
if ( ! in_array( $category, array( 'Uncategorized', 'Blogposts', 'News' ) ) ) { // Add the names of your categories here. Use get_categories() to fetch them dynamically.
$category = 'Uncategorized';
}
return $category;
}