[development] Adding a query to every url

Ernst Plüss ernst.pluess at gmail.com
Fri Nov 19 08:33:32 UTC 2010


Sorry for the noise! I Just realized that the $options array is passes by
reference to custom_url_rewrite_outbound as well. This means the correct
code looks like this:

function custom_url_rewrite_outbound(&$path, &$options, $original_path) {
    if (isset($_GET['iframe']) && 'on'==$_GET['iframe']) {
        $options['query'] .= (strlen($options['query'])>0 ? '?' : '') .
'iframe=on';
    }
}

Regards
Ernst


2010/11/19 Ernst Plüss <ernst.pluess at gmail.com>

> Hi Drupalfriends
>
> I'd like to add a query string to every url. If the URL is '/node/234' it
> should change to '/node/234&iframe=on'.
>
> I found the custom_url_rewrite_outbound function and added it to my
> settings.php:
>
>     if (isset($_GET['iframe']) && 'on'==$_GET['iframe']) {
>         $path .= (strpos($path, '?') !== FALSE ? '&' : '?') . 'iframe=on';
>     }
>
> This works fine, but the url() method, which
> calls custom_url_rewrite_outbound runns $path through drupal_urlencode()
> afterwards. This means the url changes to  '/node/234%3Fiframe%3Don' which
> obviously does not work.
>
> Am I doing something wrong or is there another way of getting this to work?
>
> Regards
> Ernst
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.drupal.org/pipermail/development/attachments/20101119/559acac8/attachment.html 


More information about the development mailing list