haiku-atelier-2024/web/app/themes/haiku-atelier-2024/src/inc/WP/Term.php

26 lines
572 B
PHP

<?php declare(strict_types=1);
namespace HaikuAtelier\WP;
use Psl\Option;
use function Psl\Option\none;
use function Psl\Option\some;
use WP_Term;
use function is_array;
final readonly class Term {
/**
* @return Option\Option<list<WP_Term>>
*/
public static function get_terms(int $post_id, string $taxonomy_name): Option\Option {
$terms = get_the_terms($post_id, $taxonomy_name);
if (is_array($terms)) {
/** @var Option\Option<list<WP_Term>> */
return some($terms);
}
return none();
}
}