在Craft 3中从模板传递到自定义模板标签时,如何遍历标签字段?

时间:2019-04-27 00:28:06

标签: php twig craftcms

假设我有一个像这样的Twig模板:

{{ craft.myPlugin.bar(entry.specialTags) }}

如何在自定义模板标记中有效地执行以下操作?

public function bar($tags)
{
    if ($tags->contains('blah')) { // pseudo-code!
        // return something...
    }
}

1 个答案:

答案 0 :(得分:0)

似乎您可以像这样遍历标签字段的每个标签:

for ($tagField->all() as $tag) {
    if ($tag->title == "blah") {
        // return something...
    }
}

或者使用类似以下的内容转换为仅标签标题的列表:

$tagTitles = array_map(
    function($tag) { return $tag->title; },
    $tagField->all()
);