Отображать содержание публикации с помощью fancybox - PullRequest
0 голосов
/ 11 октября 2018

Я пытаюсь отобразить содержимое сообщения в fancybox, и оно почти работает нормально, за исключением того, что после нажатия на ссылку отображается только содержимое первого сообщения.

Поэтому я натолкнулся на идею добавить идентификатор записи в data-src, но по какой-то причине мой код не добавляет идентификатор.

<code><ul>
          <?php $args = array('post_type' => 'rm', 'showposts' => 20, 'order' => 'ASC'); $the_query = new WP_Query( $args ); ?>
          <?php while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
          <?php $meta = get_post_meta( $post->ID, 'city_council_candidates', true );

          $postsData[$row]['links'][$i] = [
            'id' => get_the_id(),
          ];

          foreach($postsData as $key => $value) :
            $links = $value['links'];

            echo '<pre>'; echo var_dump($links); echo '
';?>

Как вы можете видеть, я также добавил функцию var_dump, чтобы проверить, получают ли $links какие-либо идентификаторы из запроса и передаются ли идентификаторы туда. Inна консоли ссылка выглядит так <a data-fancybox="" data-src="#selectableModal-" href="javascript:;"> Что я не так сделал?

Ответы [ 2 ]

0 голосов
/ 11 октября 2018

Похоже, проблема в том, что вывод <?php echo $value['id'] ?> пуст, поэтому, скорее всего, у вас есть несколько элементов с одинаковым идентификатором - #selectableModal-, и это вызывает вашу проблему.

Извините, я не WPэксперт, но, возможно, попробуйте заменить $value['id'] на $post->ID.

0 голосов
/ 11 октября 2018

<div style="display: none; max-width:500px;" id="selectableModal">
  <h2>name + surname<h2>
  <p>content</p>
 </div>

Не следует помещать отображение стиля: нет встроенного элемента id = "selectableModal".это не должно быть там, это могло бы показать fancybox, но не содержание для этого не покажет содержание.Возможно переопределить содержимое с помощью display: block! Важный;когда показывает fancybox.

...