TYPO3 使用超链接和 GET 参数显示 fe_user

TYPO3 Show fe_user with Hyperlink and GET parameter

我正在使用 TYPO3 7.6,我想发送一封带有超链接的电子邮件到我的 TYPO3 网站(页面=123)。在此页面上,我列出了所有 fe_users 和以下 TypoScript,但我只会显示一个特定用户 f.e。 uid=20.

我有两个问题:

  1. 如何在我的页面上只显示这个用户 (uid)?
  2. 如何调用超链接?

显示所有用户:

lib.feUserLink = CONTENT
lib.feUserLink {
    table = fe_users

    select.pidInList = 10
    select.max = 10
    select.orderBy = last_name DESC
    where = disable = 0

    renderObj = COA
    renderObj {
        10 = TEXT
        10.field = first_name
        10.wrap = wq<p><strong>|&nbsp;
        ...         
        14 = TEXT
        14.field = email
        14.wrap = |</p>
    }
} 

-> 1. 然后我必须编辑我的 WHERE 子句,但我不知道如何?我的所有测试都不起作用。

lib.feUserLink = CONTENT
lib.feUserLink {
  table = fe_users
  ...
  andWhere.dataWrap = uid={GP:fe_users|uid}
  #andWhere.data = GP:feuseruid
  #andWhere.data = GP:fe_user|uid
  #andWhere.intval = 1
  #andWhere.wrap = uid=|
 ...

-> 2. 如何只显示 GET 参数中的用户?

http://my.domain.tld/index.php?id=123&uid=20
http://my.domain.tld/index.php?id=123&feuser=20
http://my.domain.tld/index.php?id=123&fe_users[uid]=20
...

希望有人能给我一个重要的提示... ... 谢谢。

问候 斯特凡


我的解决方案是

lib.feuserLink = CONTENT
lib.feUserLink {
    table = fe_users

    select {
        pidInList = 10
        orderBy = last_name DESC
        where = uid = ###field_uid###
        markers.field_uid.data = GP:user
        markers.field_uid.intval = 1
        max = 1
    }
    ...

感谢您的帮助...

2) 使用来自 fe_user 的 uid 参数将 link 构建到第 123 页。添加类似

的内容

?id=123&user=456&cHash=789

lib.feUserLink = CONTENT
lib.feUserLink {
    table = fe_users
    select {
        pidInList = 10
        max = 10
        orderBy = last_name DESC
    }
    renderObj = COA
    renderObj {
        10 = TEXT
        10.field = username
        10.typolink {
            parameter = 123
            additionalParams.dataWrap = &user={field:uid}
            useCacheHash = 1
        }
        10.wrap = |</br>
    }
}

1) 要在给定列表中仅显示 selected 用户,请将您的 select 调整为

[globalVar = GP:user > 0]
lib.feUserLink.select {
    where = uid = ###field_uid###
    markers.field_uid.data = GP:user
    markers.field_uid.intval = 1
    max = 1
}
[global]

您不需要子句 where = disable = 0。默认情况下,它已包含在 SQL 查询中。