При создании многоцелевой темы (привет, Themeforest!) я бы всегда использовал для чего-то вроде этого собственный тип сообщения.
Причина в том, что, как вы уже упомянули в своем подходе к короткому коду, у вас слишком много полей и переменных даже в начале. Затем, чтобы ваша тема обслуживала как можно больше клиентов, вам нужно добавить к ней массу опций, поэтому ваши поля в генераторе шорткодов станут неисчислимыми.
Использование произвольного типа публикации дает вам все те же преимущества, а также одну важную вещь, о которой следует помнить: Пользовательский тип сообщения не является излишним. Обычно. Но в 99% случаев пойти таким путем просто элегантнее. Начиная с возможности запрашивать их, использовать их в различных местах, включать их в свою карту сайта, понятный интерфейс и т. д., есть масса причин, по которым я бы предпочел CPT системе на основе короткого кода.
Еще одна вещь, о которой следует помнить, когда вы указываете менее запутанное боковое меню в качестве плюса для коротких кодов: создайте красивую панель параметров темы с возможностью деактивации ваших пользовательских типов сообщений. Не всем нужно портфолио, не всем нужны сотрудники.
Благодаря этой возможности для пользователя вашей темы вы можете повысить производительность и улучшить взаимодействие с пользователем.
А если вам нужен шорткод — вы также можете добавить его для отображения типов сообщений.