1

私は次のメニューに取り組んでいます:

lib.content = HMENU
lib.content {
  special = directory
  special.value.data = page:id

  wrap   = <div id="productNavigator">|</div>
  expAll = 1

  1 = TMENU
  1 {
    noBlur = 1
    expAll = 1

    NO {
      stdWrap.cObject = COA
      stdWrap.cObject {

        10 = IMAGE
        10 {
          file {
            import.cObject = USER
            import.cObject {
              userFunc = tx_dam_pages->get_media_file
              uid      = ???
              listNum  = 0
              slide    = 1
            }
          }
        }

        30 = TEXT
        30.field = title
        30.wrap = <span class="text"><span>|</span></span>
      }
    }

アイデアは、ページに割り当てられたDAM画像をメニューにプルすることです。しかし、メニュー要素のIDをユーザー関数に渡す方法がわかりません。

定数値を追加すると、うまく機能し、すべてのメニュー項目が同じ画像を取得します。ただし、すべてのメニュー項目に、リンク先のページの画像を含める必要があります。

4

2 に答える 2

1

ページのuidは。を介して取得しますuid.field = uid。レンダリングプロセスでは、常にページが読み込まれ、レンダリングされます。

しかし、私はそれがうまくいくとは思わないでしょうslide = 1。しますか?

    10 = IMAGE
    10 {
      file {
        import.cObject = USER
        import.cObject {
          userFunc = tx_dam_pages->get_media_file
          uid.field = uid
          listNum  = 0
          slide    = 1
        }
      }
    }

それが機能しない場合は、uidの静的な値が機能するかどうかを確認してください。

ところで。以前は知りませんでしたtx_dam_pages->get_media_file。DAMに同梱されていますか?

于 2012-07-12T08:33:19.250 に答える
1

FrançoisSuterはまた、TYPO3英語のメーリングリストでこのソリューションを提供しました:

NO.before.cObject = IMAGE
NO.before.cObject.file.import.cObject = USER
NO.before.cObject.file.import.cObject {
    userFunc = tx_dam_tsfe->fetchFileList
    refTable = pages
    refField = tx_dampages_files
}

私の場合、これは完全に機能します。

于 2012-07-12T09:41:31.410 に答える