使用nav walker类比遍历wp\\u get\\u nav\\u menu\\u items()有什么好处吗?
Nav Walker对我来说似乎很笨重,在数组上进行迭代感觉更容易,也更易于重用,但它绕过了wordpress的内部菜单过滤器,而我对其了解不多。这会使我的主题与一些插件不兼容吗?
如能在此提供最佳实践建议,将不胜感激。
最合适的回答,由SO网友:Nicolai Grossherr 整理而成
我想说的主要是你看到wp_nav_menu()
, 是的use wp_get_nav_menu_items()
. 您可以使用wp_nav_menu()
使用默认walker或自定义walker。
老实说,我不记得什么时候我用wp_get_nav_menu_items()
或者别的什么,而我倾向于懒惰,所以这肯定是更多的工作。
这个Walker Class 因为有更多的可用信息,所以给您提供了很多可能性,这无疑是一个巨大的优势。所以,你是否应该利用助行器,或者(我会说)使用wp_nav_menu()
- 这很大程度上是一个你需要实现什么的问题,对于更复杂的菜单,我个人总是会带着助行器。最后但并非最不重要的一点是,Walker可以很好地重复使用,这是非常整洁的另一个优点。