1

Web サイトで zend ナビゲーションをセットアップしていますが、ローカルでの開発中に問題が発生しました。

私のナビゲーション.xml

<?xml version="1.0" encoding="UTF-8"?>
<config>
 <nav>
    <page1>
        <label>Site</label>
        <uri>/</uri>
        <pages>
            <page1_1>
                <label>Home</label>
                <uri>/</uri>
            </page1_1>
            <page1_2>
                <label>Contact</label>
                <uri>/contact</uri>
            </page1_2>
        </pages>
    </page1>
  </nav>
</config>

メニューのレンダリング

<?=$this->navigation()->menu();?>

HTML出力

<ul class="navigation">
 <li class="active">
    <a href="/">Site</a>
    <ul>
        <li>
            <a href="/">Home</a>
        </li>
        <li class="active">
            <a href="/contact">Contact</a>
        </li>
    </ul>
 </li>

サブフォルダー例: http://localhost/project/publicでプロジェクトを開発します。そして、zendナビゲーションURIは、リンクをhttp ://localhost/project/public/contactの代わりにhttp://localhost/contactとして表示します

baseUrl を uri に適用するにはどうすればよいですか?

4

2 に答える 2

1

xml ファイルでルート全体を指定できます。

    <home>
        <label>Home</label>    
        <route>home</route>
        <module>default</module>
        <controller>index</controller>
        <action>index</action>
    </home>

これは名前付きルートであり、モジュール、コントローラー、アクションによって指定されます。

于 2012-02-17T07:06:12.463 に答える
0

URL を生成する標準的な方法を使用している場合は、ここで説明するように、生成する前にベース URL を設定できます。

http://framework.zend.com/manual/en/zend.controller.router.html#zend.controller.router.rewritebase

$request->setBaseUrl('/project/public/');
于 2012-02-16T18:18:28.413 に答える