вместо вызова страницы я назвал php-файл, используя ajax. Я просто должен был убедиться, что это было в цикле WordPress, чтобы шорткоды работали. это сработало, делает работу, и я могу двигаться дальше по жизни!
<script>
jQuery(document).ready( function() {
jQuery.ajax({
type: "GET",
url: '/wp-content/themes/carshowcalendar-child/carslist.php',
cache: false,
dataType: 'html',
success: function(data){
jQuery("select.ticket-meta").append(data);
},
error: function(){ },
complete: function(){ }
});
});
</script>
и в этом файле carslist.php
<?php
define( 'WP_USE_THEMES', false ); // Don't load theme support functionality
require( '../../../wp-load.php' );
echo do_shortcode("[thecars]");
?>
и шорткод, который я сделал следующим образом
/****the cars shortcode*****/
function addcars() {
$current_user = wp_get_current_user();
$userID = $current_user->ID;
$currentuser_ID = 'user_'.$userID; ?>
<?php if( have_rows('my_cars', $currentuser_ID) ): ?>
<?php while( have_rows('my_cars', $currentuser_ID) ): the_row(); ?>
<option value="<?php echo the_sub_field('year'); ?> <?php echo the_sub_field('make'); ?> <?php echo the_sub_field('model'); ?> <?php echo the_sub_field('color'); ?>"><?php echo the_sub_field('year'); ?> <?php echo the_sub_field('make'); ?> <?php echo the_sub_field('model'); ?> <?php echo the_sub_field('year'); ?> <?php echo the_sub_field('color'); ?></option>
<?php endwhile; ?>
<?php endif; ?>
<?php
}
add_shortcode( 'thecars', 'addcars' );