你需要从几个角度来看待这一点,然后你必须权衡彼此之间的可能性
一般来说,短代码会比较慢(我们这里说的是毫秒),因为它们需要由短代码处理程序进行解析和处理。
用法:[my_shortcode]
在post editor中,短代码通常非常有用,通常比硬编码一个函数并在所需模板中调用它要慢得多。短代码是可移植的(这就是为什么它们should be 在一个插件中,这使得它们在主题之间的使用非常好。更重要的是,您不需要为了在模板中做一些特殊的事情而修改任何模板,您只需将短代码放到post editor的内容元框中,就可以完成。
为了方便和易于使用,这里肯定要使用短代码,这里所有的优点都超过了由于不单独使用意大利面回调函数而在短短几毫秒内造成的损失
用法:do_shortcode()
在模板中硬编码,如果您需要通过do_shortcode()
, 那么你做错了。正如我所说,短代码要慢一点,所以在这里最好只编写一个简单的函数,将其放入插件中(,这是推荐的可移植性)或functions.php
, 然后将函数调用到模板中。无论哪种方式,您都必须更改模板,以调用您的短代码或您创建的函数甚至类。这就是为什么,IMHO,您不应该使用短代码,而应该使用一个简单的函数或一个更快的类。
结论:您应该远离或限制短代码的使用吗?答案很简单,这完全取决于如上所述的用法。最后一点,如果您要在一个页面中调用多个短代码,请尝试通过将您需要的功能组合到一个可靠、聪明的短代码中来限制这些短代码,该短代码可以完成您想要的一切。
在我放下笔之前,我想留给你这个,下载并安装Query Monitor 插件。我个人觉得每个开发人员都应该在他/她的本地测试环境中安装这个插件。该插件将告诉您进行了多少查询,进行这些查询所需的时间,还将告诉您加载特定页面所需的时间。