7

早上好,我有这种情况:

我正在使用 Wordpress,并且正在尝试为我们的附属公司创建一个附属框。我已经动态创建了它,你可以在这里看到一个例子

用于创建盒子的值通过 $_GET 传递,盒子由模板页面上的 the_content() 之前调用的 php 函数创建。

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

但是我正在尝试将该特定 div 加载到另一个页面中,并且为了测试,我正在尝试将它加载到我的同一域的页面中。

测试页面在这里

我正在使用 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() 函数不适用于其他域,我需要这种可移植性。我怎么解决这个问题?

==========更新===========

我已经解决了,并且该框已加载到我的域中。问题是,我怎样才能将它加载到另一个域?

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

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

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

到创建框的域的 header.php 文件。它完美地工作!

4

2 回答 2

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');     
});
于 2012-12-19T15:55:49.680 回答
0

如果每个人都遇到此问题,请遵循以下解决方案:

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

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

load() jQuery 函数将识别为受信任的网站并加载该框。这是完美的工作!

如果您不想允许所有域但只允许一些域,而不是“*”,您可以编写允许检索框的域的链接。

于 2012-12-20T08:28:38.053 回答