在其他域上的另一个页面上加载PHP页面的div

时间:2012-12-19 15:52:17

标签: php jquery wordpress html load

早安, 我有这种情况:

我正在使用Wordpress,我正在尝试为我们的关联公司创建一个联盟信箱。我已动态创建它,您可以看到一个示例here

使用$ _GET传递创建框的值,该框由模板页面上the_content()之前调用的php函数创建。

如果您直接加载页面,该框可以正常工作。

但是我正在尝试将该特定div加载到另一个页面中并进行测试我正在尝试将其加载到同一个域的页面中。

测试页面为here

我正在使用jQuery load()函数进行加载,如下所示:

jQuery(document).ready(function(){
   var valore = jQuery('#cm_aff_box_container').text();
   jQuery('#cm_aff_box_container').empty().load('http://www.clubmagellano.it/affiliate-box/?value='+valore+' #cm_affiliate_box', function(){/*Other stuff here*/});
    });     
});

不幸的是它不会在div中加载任何东西。我试图直接加载页面并正确加载,尽管在这种情况下我的联盟方框也没有加载。

我还读到load()函数不适用于其他域,我需要这种可移植性。我该如何解决这个问题?

========== UPDATE ===========

我已经解决了,该框已加载到我的域中。问题是,如何将其加载到另一个域?

==========更新2.0 ===========

伙计我已经解决了这个问题:

<?php header("Access-Control-Allow-Origin: *"); ?>

创建框的域的header.php文件。它完美无缺!

2 个答案:

答案 0 :(得分:5)

为什么不使用iframe?它通常用于在页面中显示广告。

<iframe id="cm_affiliate_box"></iframe>

.
.
.

jQuery(document).ready(function(){
   jQuery('#cm_affiliate_box').attr('src', 'http://www.clubmagellano.it/affiliate-box/?value='+valore+' #cm_affiliate_box');     
});

答案 1 :(得分:0)

如果每个人都遇到此问题,请按照以下解决方案进行操作:

将此代码放入域模板的header.php,即必须加载的域。

<?php header("Access-Control-Allow-Origin: *"); ?>

load()jQuery函数将识别为可信任的网站并将加载该框。它完美地运作了!

如果您不想允许所有域名,只允许使用一些域名,而不是“*”,您可以编写域名链接,允许其重置该框。