我需要在这个短码功能中转义数字吗?

时间:2019-07-31 作者:pickos7

这是功能:

function shortcode_output($atts) {
return do_shortcode(\'[ks_tab col="\'.$atts[\'num\'].\'"][/ks_tab]\');
}
add_shortcode( \'my_shortcode\', \'shortcode_output\');
人们在使用我的快捷码时会添加一个数字(仅数字),我是否需要将其转义,以便它只接受数字?

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

Yes, never trust user\'s input.

仅仅因为您告诉人们为特定的shortcode参数提供一个有效的数字,并不能保证输入总是有效的数字,所以始终保护用户的输入和输出。

如果您还没有这样做,还应该阅读以下文章:

相关推荐

Do not parse shortcode in CPT

我有一个CPT,我不想在它的内容中解析shortcode(使用\\u content()函数)。我可以使用remove\\u filter删除短代码的默认过滤器。但我如何确定我只是为了我想要的CPT而删除过滤器?我有一个在页面中使用的快捷码[我的自定义快捷码]。此短代码使用WP\\U查询和输出CPT帖子。我不想在这篇CPT文章中分析短代码。我是否应该在短代码解析挂钩之前用虚拟内容更改短代码,并在之后替换回来?或者我应该在我的CPT输出之前删除短代码的默认过滤器,然后在我的CPT输出完成后再次添加短代码的默