1

我正在开发一个插件,用户可以在其中定义短代码标签。你会建议允许什么,我的想法是只允许 ascii 字符。

另外,你如何清理输入?我在想也许stip_tags然后正则表达式只允许a-z, 0-9还是有更好的解决方案?也许wordpress过滤器会起作用?或者我可以使用过滤器 wordpress 用于蛞蝓?

4

1 回答 1

0

this-is-a-good-slug 表示您还必须允许使用连字符 (-)

在此之后,您需要调用以下命令:

$string = preg_replace("/[^a-z0-9_\s-]/","",$string);    // strip away everything except a-z,0-9 and hyphen
$string = preg_replace("/[\s-]+/"," ",$string);     // clean multiple dashes or whitespaces
$string = preg_replace("/[\s_]/","-",$string);           // convert whitespaces and underscore to dash

当心; 您还需要将 UTF8 字符更改为 ascii/latin,这意味着您需要将包含此类字符的其他语言音译

于 2012-05-24T00:15:20.963 回答