在主页上,我使用此代码调用了带有Ajax的Custpm Post Type的内容
jQuery(document).ready(function($){
$.ajaxSetup({cache:false});
$(".sector_item a").click(function(){
var post_link = $(this).attr("href");
$(".sector_item_content").html("<div class='load' style='position:relative;margin-top:50px;padding-bottom:50px;'><img src='<?php bloginfo("template_url"); ?>/images/ajax-loader.gif'></div>");
$(".sector_item_content").load(post_link);
return false;
});
});
但是在同一个帖子类型的单个页面中,我需要另外一个包含内容的设计,以便我可以检测单个页面。我尝试使用Wordpess is_single()函数,但它无法在ajax中显示它。如何修复此问题? 这是我的单个template.php
<?php if(is_singular('sector' )){
echo 'Single page' ;
}else{
while (have_posts() ) : the_post(); ?>
<div class="container single_page_inner">
<div class="row clearfix">
<div class="col-md-10 column" style="float:none;margin:auto;">
<div class="sector_single_title">
<?php the_title();?>
</div>
<div class="single_sector_contentmain"> <?php the_content();?></div>
<div class="single_sector_more">
<img src="<?php bloginfo(template_url);?>/images/single_secormoreline.png"/>
<div class="single_sector_button">
<span class="single_sec_leftline"></span>
<span class="single_sec_rightline"></span>
<a href="<?php the_permalink();?>">Click Here To Read More</a>
<div class="more_line"></div>
</div>
</div>
</div>
</div>
</div>
<?php endwhile; ?>
答案 0 :(得分:2)
如果您希望能够在从Ajax加载single.php文件时执行不同的操作,则需要以某种方式告诉它何时收到Ajax请求。
一种方法是为您的通话添加一个参数,如下所示:
var post_link = $(this).attr("href") + '?isajax=1';
然后在您的single.php文件中,测试此参数:
<?php if(!empty($_GET['isajax'])){
// This is Ajax - display in Ajax format
} else {
// This is not Ajax - display in standard single.php format
}
答案 1 :(得分:0)