ボディクラスとしてのカテゴリID

カテゴリ名は category category-CATEGORY-NAME のように body の class-list に追加されます。

サイドバーのカテゴリリンクのように、カテゴリ ID を data 属性として追加するにはどうすればよいですか。つまり、data-category-id=5 のようになります。

現在いるカテゴリページの body にも同様の data 属性を追加するにはどうすればよいですか。

「いいね!」 1

Osmanさん、こんにちは :slight_smile:

これは機能するはずです。


    const container = Discourse.__container__;
    const controller = container.lookup('controller:navigation/category');
    
    api.onPageChange((url, title) => {
        let categoryId = controller.get("category.id");
        if(categoryId) {
            document.body.setAttribute('data-category-id', categoryId);
        }
        else {
            document.body.removeAttribute('data-category-id');
        }
    });

「いいね!」 2

@Canapinありがとうございます。完璧に動作します : )

「いいね!」 1

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.