设置API和参数中传递的数据

时间:2012-03-22 作者:Paul

在设置API的一个示例中,有一个输入和回调函数来清理/验证此输入的结果:

这是输入:

echo "<input id=\'text_string\' name=\'boj_myplugin_options[text_string]\' type=\'text\' value=\'$text_string\' />";
这是回调函数:

function boj_myplugin_validate_options( $input ) {
    $valid[\'text_string\'] = preg_replace( \'/[^a-zA-Z]/\', \'\', $input[\'text_string\'] );
我读到这个函数是作为参数传递给$\\u POST数据的,但是text_string 代表此处:$input[\'text_string\'] ?

我有点困惑,应该是name 参数,但name参数似乎是纯文本:name=\'boj_myplugin_options[text_string]\'

谢谢你的回答

1 个回复
最合适的回答,由SO网友:chrisguitarguy 整理而成

您可以将与设置名称对应的所有值传递给清理回调函数。当向发出POST请求时options.php WordPress从您的设置所在的页面调用您的清理回调,其方式类似于:

<?php
boj_myplugin_validate_options( $_POST[\'boj_myplugin_options\'] );
请注意,“名称”属性看起来很像为关联数组编制索引:boj_myplugin_options[text_string].

此设置$_POST[\'boj_myplugin_options\'] 作为数组。但是,正如你在上面看到的,WordPress并没有通过整个$_POST 数组进入清理回调:它只传递与插件相关的值。这样做允许您在同一选项中存储多个值。你并不总是这么做,但这很常见。

结束

相关推荐