Wordpress:在引导模态中发布内容需要而不在循环中重复模型

时间:2014-08-02 10:10:20

标签: javascript jquery wordpress twitter-bootstrap

我想在点击内容标题文字时在弹出窗口中显示内容。不知怎的,我已经实现了这个,但是,我把那个弹出窗口放在while loop中。因此,弹出窗口将创建尽可能多的帖子。有没有办法在循环外创建一个弹出窗口并显示内容,无论标题被点击了什么。我尝试使用jquery进行搜索,但没有取得任何成功。

<?php 
$i=0;
while( $slides->have_posts() ) : $slides->the_post(); 
$i++;
?>
<div class="vc_span2 wpb_column column_container col no-extra-padding">
  <div> <a class="call_model" rel="<?php echo get_the_ID() ?>"  data-toggle="modal"  data-target="#myModal<? echo $i ?>" style="display: inline; opacity: 0;">
    <?php the_title();  ?>
    </a> </div>
</div>
<div class="modal fade" id="myModal<? echo $i ?>" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" style="display:none" >
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal"></button>
        <h4 class="modal-title" id="myModalLabel"></h4>
      </div>
      <div class="modal-body"> $post = get_post(get_the_ID());
        <?php   echo $post->post_content; ?>
      </div>
    </div>
  </div>
</div>
<?php endwhile; ?>

1 个答案:

答案 0 :(得分:3)

您可以使用2种方法

执行此操作

1)Jason / Ajax

创建一个能够调用帖子竞争的php文件取决于帖子ID。单击标题创建一个jason调用,通过json调用传递当前单击的链接id,并从新创建的php文件中重新运行内容。通过json响应方法捕获内容并附加到模型区域并加载模型。

2)正常方法。

在a href标记中添加新数据属性并添加公共类

<a **data-ref="<?=echo$i;?>"** class="mod call_model" rel="<?php echo get_the_ID() ?>"  data-toggle="modal"  data-target="#myModal<? echo $i ?>" style="display: inline; opacity: 0;">
<?php the_title();  ?>

使用隐藏模式创建新div,如

<div class="text<?=echo $i?>" style="display:none"></div>

假设$ i为1,data-ref = 1,文本类为text1

然后我创建一个查询点击a。

  

$('body').on('click', '.mod', function() { var id = $(this).data('ref'); //here i got the id of the clicked link var textbox = '.text'+id; var text = $(textbox).html();//here i got the content from the content div. $('#myModal').modal('show'); // here manually load the model $('.modal-body').html(text);// here manually inject the text taken from the hidden field to the modal text area. });

然后你可以在循环外的任何地方定义你的模态html。单击将使用隐藏div中的文本填充的链接。

这些只是您需要处理代码的概念,具体取决于您的网站。