我已经将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
答案 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
,以查找需要更改的部分。遗憾的是,错误消息并未指向您需要更改的确切行,它只是提示您使用需要更改的弃用方法。