WordPressでクラスの存在をチェックする方法


  1. has_class関数を使用する方法:

    function has_class($class_name, $post_id) {
    $post_classes = get_post_class('', $post_id);
    return in_array($class_name, $post_classes);
    }
    // 使用例
    if (has_class('class-name', get_the_ID())) {
    // クラスが存在する場合の処理
    } else {
    // クラスが存在しない場合の処理
    }
  2. has_term関数を使用する方法 (タームの場合):

    function has_term_class($term_slug, $taxonomy, $post_id) {
    $terms = get_the_terms($post_id, $taxonomy);
    if (is_array($terms)) {
        foreach ($terms as $term) {
            if ($term->slug === $term_slug) {
                return true;
            }
        }
    }
    return false;
    }
    // 使用例
    if (has_term_class('term-slug', 'taxonomy-name', get_the_ID())) {
    // クラスが存在する場合の処理
    } else {
    // クラスが存在しない場合の処理
    }
  3. function has_tag_class($tag_slug, $post_id) {
    $tags = get_the_tags($post_id);
    if (is_array($tags)) {
        foreach ($tags as $tag) {
            if ($tag->slug === $tag_slug) {
                return true;
            }
        }
    }
    return false;
    }
    // 使用例
    if (has_tag_class('tag-slug', get_the_ID())) {
    // クラスが存在する場合の処理
    } else {
    // クラスが存在しない場合の処理
    }

これらの方法を使用することで、WordPressの投稿に特定のクラスが存在するかどうかをチェックすることができます。適切な方法を選択し、必要に応じてコードをカスタマイズしてください。