Processwire:如何将标签存储为数组

Processwire: How to store Tags as Array

我是 Processwire 的新手。

我想创建一个字段类型,我可以在其中定义多个标签(所有可能的标签,而不是预定义的标签)。

我想在我的模板中将它们用作简单数组:

$tags = $page->get('tags');
// $tags = array('bananas', 'apples', 'oranges')

因为我正在创建一个简单的模板,它将我的数据输出为 JSON 供其他应用使用。某种无头 CMS。

我该如何解决这个问题?我在其他论坛上没有找到任何processwire模块或解决方案。

一种方法是只有一个页面,然后使用具有单个字段的转发器。

有多种方法可以完成这项工作。最简单的方法显然是使用普通的文本字段和逗号分隔它们。对于您的输出,您可以使用

$tags = explode(',',$page->get('tags'));

如果你想有一个更好的标签输入界面(输出与上面相同)你可以使用:http://modules.processwire.com/modules/textbox-list/

有关更高级的解决方案,例如使用 "page" 字段类型以及 "InputfieldChosenSelect",请查看此处:https://processwire.com/talk/topic/2010-fieldtype-for-storing-tags/

顺便说一句:对于 Processwire,PW 开发者论坛始终是提出此类问题的最佳场所:)