How to reproduce
Using PowerPack version 2.33.2, create a content grid and use layout Carousel. Add a trigger class to each post item (we are doing this by using a shortcode in Custom content and defining the post item structure in functions.php
).
Then create a PowerPack modal, set the Trigger to Custom Element Click and enter the class you defined above.
In Content set Type to Raw HTML, and in the box below enter your HTML with the required comment as defined in this article:
<!-- pp-modal-post-template -->
[example_carousel_popup]
Then try clicking one of the posts in the carousel. The modal will show with the loader icon but the ajax never triggers, however it does if the layout is set to Grid instead of Carousel.
Proposed fix
The carousel is missing the data-id attribute, so the modal content returns before the ajax request is triggered at modules/pp-modal-box/js/frontend.js:139.
Change modules/pp-content-grid/includes/post-carousel.php:25 from:
<div class="pp-content-post pp-content-carousel-post pp-grid-<?php echo $settings->post_grid_style_select; ?> <?php echo join( ' ', get_post_class() ); ?>"<?php BB_PowerPack_Post_Helper::print_schema( ' itemscope itemtype="' . PPContentGridModule::schema_itemtype() . '"' ); ?> data-hash="pp-post-<?php echo $post_id; ?>">
to:
<div class="pp-content-post pp-content-carousel-post pp-grid-<?php echo $settings->post_grid_style_select; ?> <?php echo join( ' ', get_post_class() ); ?>"<?php BB_PowerPack_Post_Helper::print_schema( ' itemscope itemtype="' . PPContentGridModule::schema_itemtype() . '"' ); ?> data-hash="pp-post-<?php echo $post_id; ?>" data-id="<?php echo $post_id; ?>">