The easiest way to do this is in your theme is using inline content.
First, go to your Settings > Media admin page and activate the Inline option under the FancyBox settings. After saving, the amdin page will show a new section called Inline where you can tweak its parameters.
Next, in your theme you need to create a DIV for your pop-up content. INSIDE that you need to run a php script to call your shortcode. Here is what mine looks like:
<div style="display:none" class="fancybox-hidden">
<div id="fancy-contact-form" class="hentry" style="width:460px;height:380px;">
<h3>Contact us!</h3>
<?php echo do_shortcode("[yourshortcodeforform]"); ?>
</div>
</div>
Finally; you will need to have a link that will actually call that hidden content. Here is what mine looks like:
<a href="#fancy-contact-form" class="fancybox-inline btn btn-default">Send us a quick message!</a>
Two things to note:
1) The id from the hidden content MUST match the href content with the link; and you MUST put a “#” in front of the matching href. So if your hidden div id was “popout-form”; your href would have to be “#popout-form”.
2) Replace the [yourshortcodeforform] with your specific shortcode for your form. Also remember that when calling shortcodes in php you CANNOT use double quotes (i.e. “) in your shortcode; change them to single quotes (i.e. ‘).
For more information check out the FAQ where inline content is mentioned.
Hope this helps.