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 开发者论坛始终是提出此类问题的最佳场所:)
我是 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 开发者论坛始终是提出此类问题的最佳场所:)