【问题标题】:How to add parameter to multiple rendered URLs?如何向多个呈现的 URL 添加参数?
【发布时间】:2011-04-01 01:52:12
【问题描述】:

我有一个 PHP 页面将内容提供到另一个网站的 iframe 中,它需要根据主机网站上的用户交互重新加载 iframe 内的内容。 Iframe 内的页面内容包含多个 URL。

为了使 iframe 交互正常工作,我正在考虑在 URL 中使用请求参数来标识它是对 iframe 的调用 --- 以便使用自定义格式/样式/行为重新加载内容托管网站,而不是将其视为正常请求。

什么可能是使用自定义请求参数在页面上呈现大量 URL 的简单解决方案,而无需手动将其添加到相关 HTML 模板中每个链接的末尾?

我发现了一些基于 JavaScript 的想法,但它们似乎有点过分。任何指针将不胜感激。

谢谢。

【问题讨论】:

    标签: php javascript url iframe rendering


    【解决方案1】:

    检查 output_add_rewrite_var() PHP 函数。 例如,如果您调用 output_add_rewrite_var('my_var', 5) 它会将 my_var=5 添加到所有本地 URL,并将 添加到所有表单。

    【讨论】:

    • 感谢您教我这个功能......正是我需要的。
    【解决方案2】:

    虽然我认为在 PHP 中这样做更简洁,但在 JavaScript 中你可以使用类似

    function addQueryPart() {
        var allAnchors = document.getElementsByTagName('a');
        var i = allAnchors.length, href;
    
        while (i--) {
            href = allAnchors[i].href;
            if (href.indexOf('?') > -1)
                href += '&';
            else
                href += '?';
    
            allAnchors[i].href = href + "inframe=true";
        }
    }
    

    您是否也需要与哈希一起使用的东西(例如 foo#withinPage)?

    【讨论】:

    • 谢谢你 - 上面的 php 解决方案更合适,但我已经注意到了另一次。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-06
    • 2020-09-12
    相关资源
    最近更新 更多