2

这里的正则表达式使用的是wp-rest-apienpoints 正则表达式,所以我所拥有的是

$routes['/dn/settings/update/(?P<password>.{7,50})/(?P<newsletter>\d)'] = array(
    array( array( $this, 'settings_update'), WP_JSON_Server::ALLMETHODS ),
);

我需要帮助的部分是(?P<password>.{7,50})

现在它接受 7-50 个字符的密码,但如果没有提交密码,我也希望更新能够工作。IE。“/dn/设置/更新//1”

我怎么能.{0||7,50}在不使用的时候做类似的事情.{0, 50}

4

1 回答 1

4

只需将您的整个模式设为可选:

$routes['/dn/settings/update/(?P<password>.{7,50})?/(?P<newsletter>\d)'] = array(
    array( array( $this, 'settings_update'), WP_JSON_Server::ALLMETHODS ),
);
于 2015-06-03T15:30:35.653 回答