Craft CMS でフィールドに入力された URL が http で始まるときだけ別ウィンドウで開きたい

やりたいことはタイトルのままです。例えば、フィールドのハンドルが linkUrl だったとします( urllink は予約語となっていて使えません)。

このフィールドに入力された値が http で始まる場合だけ target="_blank" をつけたいとします。そうしておけば、内部リンクは相対パスで、外部リンクは絶対URLで入力するという運用ができますよね。

この条件分岐をしたい場合は、Twig の Comparisons(比較演算子)の中の matches を利用します。

<a href="{{ entry.linkUrl }}"{% if entry.linkUrl matches '/^http/' %} target="_blank"{% endif %}>
  {{ entry.linkText }}
</a>

matches を知っておくといろいろ便利になると思います。

That's all!

以上です。

  • このエントリーをはてなブックマークに追加
Just a second...