Here's the Item Model, Block Model and BlockState File. I also put in comment here the code of the ModelBakeryRegistration.
public static void registerRenderMeta(Block block, int meta, String name) {
Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(Item.getItemFromBlock(block), meta,
new ModelResourceLocation(block.getRegistryName() + "_" + name, "inventory"));
ModelBakery.registerItemVariants(Item.getItemFromBlock(block),
new ModelResourceLocation(block.getRegistryName() + "_" + name, "inventory"));
}
This method get called for each subItem from 0 to 7 in that specific case.
wool_slab.json
wool_slab_white.json
wool_slab_half_white.json