0

Zend_Navigation を使用して xml を読み込んでいます。そこから作成されたメニューに追加のパラメーターを追加したい (最初のページの要求から取得した)。

たとえば、最初のページが mysite.com/pages/page1?Id=42 の場合、メニューをクリックすると、各リンクに「?Id=42」が追加されます。

4

1 に答える 1

0

これを行う最も簡単な方法は、Zend_Controller_Action_Helper_Urlクラスを拡張し、クエリ文字列をparent::url()結果に追加することです。それよりも、 を呼び出して、URL ヘルパーを mvc ページに挿入する必要がありますZend_Navigation_Page_Mvc::setUrlHelper($yourUrlHelper)

クエリ文字列がサポートする URL ヘルパーの例:

class My_Helper_Url extends Zend_Controller_Action_Helper_Url
{
    public function url($urlOptions = array(), $name = null, $reset = false, $encode = true)
    {
        $queryString = $this->getRequest()->getServer('QUERY_STRING');

        return parent::url($urlOptions, $name, $reset, $encode) . 
            ($queryString ? '?' . $queryString : '');
    }
}
于 2012-03-23T00:24:38.120 に答える