added shortcode functionality