WordPress AJAX ширина вызова admin-ajax.php возвращает пустой результат - PullRequest
0 голосов
/ 27 августа 2018

У меня есть пользовательское поле ACF с полем выбора, и теперь я хочу вернуть выбранные параметры с помощью AJAX, поэтому в моем functions.php -файле я написал следующее:

function get_movies(){

$posts = get_field('choose_movies'); 

    if( $posts ): ?>
    <?php foreach( $posts as $p ): ?>
        <div class="movie-item">
            <a href="<?php echo get_permalink( $p->ID ); ?>">
                <div class="movie-wrapper">
                    <?php $image = get_field('movie_image', $p->ID); ?>
                        <div class="movie-image" style="background-image:url('<?php echo $image['url']; ?>')"></div>
                            <div class="content">
                                <p><?php the_field('movie_title', $p->ID); ?></p>
                            </div>
                       </div>
                </div>
            </a>
        </div>
      <?php endforeach; ?>
     <?php endif; ?>
<?php }

add_action('wp_ajax_nopriv_get_movies', 'get_movies');
add_action('wp_ajax_get_movies','get_movies');

и в моемJS файл, когда я звоню:

$.ajax({
  url: "/wp-admin/admin-ajax.php",
  data: {
    action: "get_movies"
  },
  success: function(data){
     console.log('DATA: ', data)
  }

data пуст, например, дает мне 0 - кто-то может сказать мне, что я делаю неправильно?

РЕДАКТИРОВАТЬ

ОК, поэтому я добавил следующие строки для передачи postID:

function get_movies( $post ){
   global $wpdb;
   $pid = $post->ID;
   $posts = the_field('choose_movies', $post->ID);
   ...
}

но все же, $posts пусто - это действительно вызывает боль в ..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...