的index.php:
<div id="MainContainer">
<div id="Content">
lalalala content
</div>
<input type="submit" value="Select" id="Load_PrivacyPolicy">
</div>
<div id="Content2" style="display:none;"></div>
的header.php
<script type="text/javascript">
$(document).ready( function() {
$("#Load_PrivacyPolicy").on("click", function() {
$("#Content").hide();
$("#Content2").show( );
$("#Content2").load( "http://www.prismasites.com/wp-content/themes/Prismasites/PricingDisclaimer.php");
});
});
</script>
PricingDisclaimer.php
<?php header('Access-Control-Allow-Origin: *'); ?>
<?php query_posts('p=1272' ); ?>
<?php if (have_posts()); ?>
<?php while ( have_posts() ) : the_post();?>
<?php
echo the_content();
endwhile; ?>
错误:
Fatal error: Call to undefined function query_posts() in /srv/disk12/1806831/www/prismasites.com/wp-content/themes/Prismasites/PricingDisclaimer.php on line 5
我收到此错误,因为我尝试使用query_posts
为什么它不允许我使用query_posts?
你是认真的吗?您是否告诉我无法将Wordpress帖子加载到加载到DIV文件的.php文件中?
如何将wordpress帖子(query_posts)加载到加载到DIV的.php中?
答案 0 :(得分:1)
在PricingDisclaimer.php的顶部包含以下行(如果您需要使用WordPress功能,则需要包含标题)。
<?php require_once('../../../wp-blog-header.php'); ?>
从PricingDisclaimer.php中删除header('Access-Control-Allow-Origin: *');
这一行。
将您的jQuery代码更新为以下内容,
$(document).ready(function() {
$("#Load_PrivacyPolicy").on("click", function() {
$("#Content").hide();
$("#Content2").show();
$.ajax({
url: '/wp-content/themes/Prismasites/PricingDisclaimer.php',
method: 'get',
datatype: 'html',
success: function(data) {
$("#Content2").html(data);
},
error: function(jqXHR, status, error) {
// Error handling
}
});
});
});
注意:This是在WordPress中执行Ajax调用的正确方法。