We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 32535
    • 58 Posts
    メニューで表示されるドキュメント名をタイトルに入力された値ではなく、任意のテンプレート変数に入力された値にしたいのですが
    可能でしょうか?
    よろしくお願い致します。
      • 6350
      • 421 Posts
      たぶん不可能だから・・コメントが付かないんじゃないでしょうか?

      タイトルと違うメニューにしたければメニュータイトルに入力すればいいわけですから、わざわざテンプレート変数を使う理由がよくわかりません。テンプレート変数は目的のページが表示された時のテンプレート内でしか利用できないはずです。

      フォーラムのスタイルシートが元に戻ったみたいですね。見やすくなった rolleyes
        • 33014 ☆ A M B ☆
        • 1,231 Posts
        Wayfinderを使って、ということですよね?おそらく改造前提になると思います。
        ソースを見たところ、「getTVList」など関係ありそうな名前の関数は見られます。
          • 26012
          • 324 Posts
          yamaさんが仰るように改造でも勿論いけると思いますが、私の知る方法をご紹介します。
          WayFinderについては多分もっと良い方法があるんだろうな~なんて思ってます。

          1.Dittoを使ってる場合

           以下いずれの方法も、tpl/tpl***に任意のチャンクを指定し、そのチャンクから呼び出します。

           1.1 自前のスニペットを使わない方法

            [+テンプレート変数名+]と記述

           1.2 自前のスニペットを使う方法

            チャンクで行う処理をスニペットで書き、チャンクからそのスニペットを呼び出す。
            スニペットからgetTemplateVarOutput() API関数を呼び出してテンプレート変数値を取得
            参考 : http://wiki.modxcms.com/index.php/API:getTemplateVarOutput
            ※若干高度。PHPの基本的な知識が必要。

          2.WayFinderを使ってる場合

           以下いずれの方法も、rowTplに任意のチャンクを指定し、そのチャンクから呼び出します。

           2,1 自前のスニペットを使わない方法

            GetFieldスニペットを使う。
            参考 : http://modx.liolion.net/resource/getfield.html
            ※こっちの方が簡単ですが、性能評価はしてません。

           2.2 自前のスニペットを使う方法

            チャンクで行う処理をスニペットで書き、チャンクからそのスニペットを呼び出す。
            スニペットからgetTemplateVarOutput() API関数を呼び出してテンプレート変数値を取得
            参考 : http://wiki.modxcms.com/index.php/API:getTemplateVarOutput
            ※若干高度。複数TVを取る場合は性能的に吉!PHPの基本的な知識が必要。

          こんな感じでしょうか。。。(反応が遅れてすみません)
            • 33488
            • 429 Posts
            WayFinderのテンプレートにそのままTV名が使えるみたいですが・・・
            単なる文字列であれば、[+フィールド名+]って書けば、そのメニューっていうか属するドキュメントのTV値を使うようです。
            ちなみに、試したのは0.9.6.3で、デモデータのサイトをそのまま使って、WayFinderのテンプレートにデモのテンプレート変数documentTagsを試しに([+documentTags+])感じで追記してみたところ、TVに値を入れたドキュメントには(入力した文字列)で表示されました。

            希望するイメージと同じであれば、こんな感じで対応できるかと思います。
            ではでは、

              • 33014 ☆ A M B ☆
              • 1,231 Posts
              ぉっ、そうなんですか。
              そうすると、メニューの項目名をシステム側で何らかのルールに則って動的に制御したり、ドキュメント新規作成時の既定値を与えておいたりできますよね。便利そう。
                • 33488
                • 429 Posts
                とりあえず、軽くテストしただけなんですが、
                どんな風かっていうと

                のテストサイトのAjax辺りのメニュー表示なんかを見てもらうとよいかも
                先ほどの説明のまんま。
                  • 26012
                  • 324 Posts
                  Zeroさん、フォローありがとうございます。
                  Dittoは確認してたのですが、WayFinderもできたんですね。
                    • 32535
                    • 58 Posts
                    Dittoのtplを使う方法で、テンプレート変数の値を表示することができました。

                    みなさん、ありがとうございました。