为什么do_shortcode()在公共页面上运行良好,但在管理页面上运行不正常?

时间:2017-09-02 20:35:05

标签: php wordpress admin shortcode

以下相同的代码在公共页面上调用时返回文本,并在管理页面上调用时返回空字符串。

error_log(do_shortcode($sc));

为什么会这样?有解决方案吗?

Shortcode: [amazon-element asin="B01F2JQ8NQ" fields="full-image_clean" container=""]

这来自“邮政插件中的亚马逊产品”。

1 个答案:

答案 0 :(得分:1)

通常,do_shortcode()可以从管理页面运行。但是,管理员和非管理员环境是完全不同的。特别是在管理环境中未调用的非管理环境中调用许多操作。可能是短代码'amazon-element'在某种程度上依赖于非管理环境中的某些东西。

请尝试使用其他短代码(例如图库),您会看到do_shortcode()在管理页面上的功能至少适用于某些短代码。

顺便提一下,调用'amazon-element'的短代码函数并返回一个空字符串。如果没有调用,do_shortcode的参数将保持不变。