Pagefile::hasTag() method

Does this file have the given tag(s)?

Example

$file = $page->files->first();

if($file->hasTag('foobar')) {
  // file has the "foobar" tag
}

if($file->hasTag("foo|baz")) {
  // file has either the foo OR baz tag
}

if($file->hasTag("foo,baz")) {
 // file has both the foo AND baz tags (since 3.0.17)
}

Usage

$bool = $pagefile->hasTag(string $tag);

Arguments

NameType(s)Description
tagstring

Specify one of the following:

  • Single tag without whitespace.
  • Multiple tags separated by a "|" to determine if Pagefile has at least one of the tags.
  • Multiple tags separated by a comma to determine if Pagefile has all of the tags. (since 3.0.17)

Return value

bool string

True if it has the given tag(s), false if not.

  • If multiple tags were specified separated by a "|", then if at least one was present, this method returns the found tag.
  • If multiple tags were specified separated by a space or comma, and all tags are present, it returns true. (since 3.0.17)

Changelog

  • 3.0.17 Added support for AND mode, where multiple tags can be specified and all must be present to return true.
  • 3.0.17 OR mode now returns found tag rather than boolean true.

See Also


Pagefile methods and properties

API reference based on ProcessWire core version 3.0.236

Latest news

  • ProcessWire Weekly #548
    In the 548th issue of ProcessWire Weekly we're going to check out a couple of new third party modules, introduce the latest ProcessWire core updates, and more. Read on!
    Weekly.pw / 9 November 2024
  • Custom Fields Module
    This week we look at a new ProFields module named Custom Fields. This module provides a way to rapidly build out ProcessWire fields that contain any number of subfields/properties within them.
    Blog / 30 August 2024
  • Subscribe to weekly ProcessWire news

“ProcessWire is like a breath of fresh air. So powerful yet simple to build with and customise, and web editors love it too.” —Margaret Chatwin, Web developer