经过广泛的搜索和实验,我得出的结论是,我的困境是独一无二的,理论上很简单,但如果我被告知这是不可能的,我也不会感到惊讶。
简而言之: 我想将一个页面重定向到我网站上的另一个页面,但不仅如此,一旦重定向,我希望该页面的内容填充它被重定向到的页面的目标iframe。
例如: 要点击的原始链接转到Mysite.com/page1.php ...。在Mysite.com/page1.php的内容填充之前,它会重定向到Mysite.com/index.php, 然后mysite.com/page1在目标iframe的mysite.com/index中加载。
更具体一点: 我有一个wordpress网站,我已经删除了标题/侧边栏,当链接访问单个帖子或页面时,最终用户正在查看我想要出现在我的索引页面的iframe中的精简页面我有自定义的链接和按钮,以与标签,类别等相对应。
从我在这一点上收集到的内容可能是不可能的,但是非常感谢任何类型的输入,谢谢:)
答案 0 :(得分:0)
您可以通过发送查询变量告诉page1.php和index.php您的确切意图。
例如......在你的page1.php中你重定向(无论你希望如何)到index.php?show = page1.php
然后... index.php获取查询变量(检查它是否来自您创建的受限列表),然后显示iframe但使用另一个查询变量来停止page1.php再次重定向。像page1.php?redirect = no
之类的东西例如......
在index.php的顶部put:
$safe_list=array("page1.php","page2.php");
$show = (isset($_GET['show'])) ? $_GET['show'] : FALSE;
if (in_array($_GET['show'],$safe_list)) {
print "<iframe src='" . $_GET['show'] . "?redirect=no'></iframe>";
}
print "hello I'm index.php";
// rest of index.php
在page1.php的顶部(在将任何内容发送到客户端之前)put:
$redirect = (isset($_GET['redirect'])) ? $_GET['redirect'] : FALSE;
if ($redirect!=='no') {
header("Location: index.php?show=page1.php");
exit;
}
print "hello I'm page1.php";
// rest of page1.php proper
答案 1 :(得分:0)
为什么不使用javascript并仅在索引页面中加载网站的某些部分? Here an example with jquery load() function
我认为iframe不是一个很好的方法。
此外,搜索引擎无法看到iframe中的网页内容。