To display the contents of the record in a modal window, you need to install the Easy Fancybox plugin , some knowledge of html, php, and WordPress functions. The procedure is described below.
Install the Easy Fancybox plugin.
Create a button in Visual Composer (VC), style it, save the page and look at the button code in the browser inspector:

Since VC adds a class to the vc_btn3_container block and not the <a> tag, this does not suit us. Copy the <a> tag, delete the button in the VC and create an html block instead. Insert the <a> tag there, copied from the browser, not forgetting to add the fancybox class and the link to the anchor #read_post_popup.
A page in a VC should look something like this:

At the very bottom of the page a number of #popups has been added, which should be hidden in css:
#popups { display: none; }
This is a blank for popaps (there may be a lot of them). The series contains a text block with the following content for one popup:

If there are several popups, then the code in this block must be cloned several times, changing the text inside. Of course, then there should be several buttons. The button-popup connection occurs via an anchor (in the example #read_post_popup).
The block shown above cannot be html, because it uses a shortcode (which is discussed below), and shortcodes in html blocks are not processed. You can edit this block only in text, not in visual mode.
At this stage, you can already try to save the page and click on the button - a modal window will appear (with content that is not yet correct).
To display the desired content, you need to write your shortcode. It is quite simple. In the function.php your theme you need to insert the following code:
function read_post_shortcode( $atts ) { $p = get_page_by_title($atts['title'], 'OBJECT', 'post'); if ($p) return do_shortcode($p->post_content); else return ''; } add_shortcode('read_post', 'read_post_shortcode');
That's all. A working example can be viewed on my test site .