Embora isso seja perfeitamente possível do ponto de vista técnico, acho que a abordagem seria excessivamente complicada, especialmente porque “no início” é difícil de definir/detectar, e você quer evitar que o plugin continue adicionando B depois que o administrador do site o removeu. Além disso, quando uma nova categoria privada é adicionada, o plugin precisaria adicioná-la, mas precisaria ser capaz de ver a diferença entre uma nova categoria (adicionar) e uma categoria que foi removida anteriormente pelo administrador (não adicionar novamente).
Eu optaria por uma configuração include_private_categories que começa vazia, e o plugin simplesmente processaria todas as categorias públicas E as categorias em include_private_categories. Isso lhe dará muito menos dores de cabeça.