【问题标题】:Warning: call_user_func_array() expects parameter 1 to be a valid callback, Timber plugin警告: call_user_func_array() 期望参数 1 是有效的回调,Timber 插件
【发布时间】:2017-04-06 18:36:03
【问题描述】:

警告:call_user_func_array() 期望参数 1 是有效回调,C:\xampp\htdocs\marine\wordpress\wp-content\plugins\timber-library\lib\Twig 中没有给出数组或字符串.php 在第 268 行 我一直在我的 WordPress 主题主页上看到这个。我正在使用 Timber wordpress 开发 WordPress 主题。

我通过在 WordPress 管理员上安装插件来安装 Timber。 实际行为:一切都按原样出现,因为我还没有开始挂钩帖子。这只是从我的设计师添加我的 html css js 和图像。 我只处理页眉和页脚以及菜单。 后端 PHP 文件没有进行任何修改。 我在 xampp、Timber 1.2.4 上使用(WordPress 版本 4.7.3)PHP 5.6.30

强调文字

【问题讨论】:

  • 你能更具体地找出发生这种情况的地方吗?您能否注释掉 Twig 文件的不同部分并查看哪个部分可能会触发该警告?
  • @Gchtr 我已经评论了第 268 行的返回调用和这个 $twig->addFunction(new \Twig_SimpleFunction('action', function( $context ) { $args = func_get_args(); array_shift ($args); $args[] = $context; call_user_func_array('do_action', $args); }, array('needs_context' => true)));
  • 非常感谢@Gchtr 创造了奇迹
  • 是的,也许它确实很神奇,但你不应该编辑 Timber 插件中的任何文件,因为一旦你更新插件,错误就会再次出现。对于“Twig 文件”,我指的不是 Twig.php 文件,而是您在您的主题中 扩展名为 .twig 的所有文件。警告可能是由您的主题中的错误引发的,因此您应该首先在主题中找到导致警告的部分。

标签: timber


【解决方案1】:

我刚刚遇到了同样的错误,谷歌搜索把我带到了这里,所以只是想分享对我有用的东西。我在尝试使用 twig 模板中的 fn() 检查 wordpress 函数时遇到此错误。

我错过了导致此错误的事情是将函数名称放在单引号中。一旦我添加了这些,错误就消失了。

{% if fn('wp_is_mobile') %}

还有可能你在 fn() 中调用的内容也没有在 php 中定义,因此请检查你在哪里定义它是否是自定义的。

【讨论】:

    猜你喜欢
    • 2015-10-18
    • 1970-01-01
    • 2016-06-06
    • 2015-08-11
    • 1970-01-01
    • 2021-04-18
    • 2016-10-29
    • 2013-08-01
    • 2012-10-04
    相关资源
    最近更新 更多