Как добавить параметр в несколько отображаемых URL? - PullRequest
0 голосов
/ 19 августа 2010

У меня есть страница PHP, на которой контент помещается в Iframe на другом веб-сайте, и он должен повторно загружать контент внутри Iframe в соответствии с действиями пользователя на веб-сайте хоста. Содержимое страницы в Iframe содержит несколько URL-адресов.

Чтобы взаимодействие с Iframe работало, я подумал об использовании параметра URL в URL-адресах, который идентифицирует, что это вызов для Iframe --- для перезагрузки содержимого с пользовательским форматированием / стилями / поведением хост-сайт, вместо того, чтобы рассматривать его как обычный запрос.

Каким может быть простое решение для отображения множества URL-адресов на странице с пользовательским параметром запроса, без необходимости добавлять это вручную в конец каждой ссылки в соответствующих шаблонах HTML?

Я нашел несколько идей на основе JavaScript, но они кажутся немного чрезмерными. Любые указатели будут оценены.

Спасибо.

Ответы [ 2 ]

2 голосов
/ 19 августа 2010

Проверьте output_add_rewrite_var () PHP-функцию. Например, если вы вызываете output_add_rewrite_var ('my_var', 5), он добавит my_var = 5 ко всем локальным URL-адресам и для всех форм.

1 голос
/ 19 августа 2010

Хотя я думаю, что это лучше делать в 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)?

...