ページリストブロックに[タグ]属性を表示したいという要望があり、以下を参考にブロックテンプレートへ追記してみました。
<?php
$tags = $page->getAttribute('tags');
if ($tags && count($tags)) { ?>
<ul>
<?php foreach ($tags as $tag) { ?>
<li><?php echo $tag ?></li>
<?php } ?>
</ul>
<?php } ?>
以下のエラーを生じました。
TypeError
count(): Argument #1 ($value) must be of type Countable|array, Concrete\Core\Entity\Attribute\Value\Value\SelectValue given
試しにそのまま出力してみました。
<?php
$tags = $page->getAttribute('tags');
echo $tags;
?>
ページに付与された複数のタグが連続して表示されました。
ソースコード上では改行されているようです。
各タグを個別に取得しループでマークアップできればと思いますが、バージョン 9 ではどのようになりますでしょうか。
Concrete CMS バージョン
9.2.6
PHP バージョン
8.1.x
サーバー
エックスサーバー