カスタムフィールドでショートコードを使うには、『このカスタムフィールドの値をthe_content()と同じように扱いますよ』とフィルターをかけてあげる必要があります。
カスタムフィールドを表示するときにフィルターをかけるんですが、通常Advanced Custom Fieldを使っていると
echo get_field('custom_field');
という形で取得して表示しますが、
echo apply_filters('the_content', get_post_meta($post->ID, 'custom_field', true));
と記述することで、カスタムフィールド内でもショートコードを利用することができるようになります。