TImber错误:PHP警告:{{item.permalink}}已弃用,请改用{{item.link}}

时间:2017-07-19 15:32:48

标签: wordpress timber

我已经将Wordpress上的古老版本的Timber插件升级到最新版本。我已经完成了1.x升级指南并完成了所有路由和弃用的功能更改。

但是,在日志文件中,对于任何一个页面加载,我都会遇到很多重复的PHP警告错误:

PHP Warning:  {{item.permalink}} is deprecated, use {{item.link}} 
instead in /Users/chris/sites/staging/wp-
content/plugins/timber-library/lib/Helper.php on line 210

但仅指向Timber Helper文件。它没有指向我正在使用的实际代码行。看起来抛出此错误的Timber函数是在“一般”基础上执行的吗?

有关如何解决此问题的任何想法?

如果这有帮助,这里是与上述每个错误相关的PHP堆栈跟踪的开头:

[19-Jul-2017 15:19:12 UTC] PHP Stack trace:
[19-Jul-2017 15:19:12 UTC] PHP   1. {main}() 
/Users/chris/sites/staging/index.php:0
[19-Jul-2017 15:19:12 UTC] PHP   2. require() 
/Users/chris/sites/staging/index.php:17
[19-Jul-2017 15:19:12 UTC] PHP   3. require_once() . 
/Users/chris/sites/staging/wp-blog-header.php:19
[19-Jul-2017 15:19:12 UTC] PHP   4. include() . 
/Users/chris/sites/staging/wp-includes/template-
loader.php:74
[19-Jul-2017 15:19:12 UTC] PHP   5. Timber\Timber::render() 
/Users/chris/sites/staging/wp-
content/themes/staging/page.php:35
[19-Jul-2017 15:19:12 UTC] PHP   6. Timber\Timber::fetch() 
/Users/chris/sites/staging/wp-content/plugins/timber-
library/lib/Timber.php:379
[19-Jul-2017 15:19:12 UTC] PHP   7. Timber\Timber::compile() 
/Users/chris/sites/staging/wp-content/plugins/timber-
library/lib/Timber.php:352

1 个答案:

答案 0 :(得分:1)

方法permalink()在0.20.0版本的帖子和0.21.7版的菜单项中已被弃用。

这意味着在你的Twig文件中,你可以有一个链接

<a href="{{ post.permalink }}">{{ post.title }}</a>

现在需要

<a href="{{ post.link }}">{{ post.title }}</a>

您的错误消息似乎是由导航中的链接触发的,因此您需要检查生成导航菜单的Twig文件,并将.permalink替换为.link

您还可以在所有Twig文件中搜索.permalink,以查找需要更改的部分。遗憾的是,错误消息并未指向您需要更改的确切行,它只是提示您使用需要更改的弃用方法。