在tt_news中自动设置作者和电子邮件

时间:2012-06-23 14:43:08

标签: typo3 tt-news

我知道我可以配置tt_news自动将作者和电子邮件设置为给定值,如下所示:

TCAdefaults.tt_news.author = full name
TCAdefaults.tt_news.author_email = name@domain.tld

但我可以从当前登录的BE用户的信息中检索电子邮件的名称吗?

2 个答案:

答案 0 :(得分:2)

为了使每次更改都能填充值(如果为空),您需要在某处注册一个钩子,即在您自己的扩展名中

typo3conf/ext/yourext/hooks/class.tx_ttnews_hooks.php

class tx_ttnews_hooks {
// hook for prefilling TCA values
function getSingleField_preProcess($table, $field, &$row, $altName, $palette, $extra, $pal, $pObj) {

        switch($field) {
            case 'author_email':
                if($row[$field] == '') {
                    $row[$field] = $GLOBALS['BE_USER']->user['email'];
                }
                break;

            case 'author':
                if($row[$field] == '') {
                    $row[$field] = $GLOBALS['BE_USER']->user['realName'];
                }
                break;
         }
    }
}

然后将其添加到typo3conf/ext/yourext/ext_localconf.php

$TYPO3_CONF_VARS['SC_OPTIONS']['t3lib/class.t3lib_tceforms.php']['getSingleFieldClass'][] 
    = 'EXT:yourext/hooks/class.tx_ttnews_hooks.php:tx_ttnews_hooks';

答案 1 :(得分:0)

extension可以满足您的需求。我自己没有用过,但说明听起来很有希望。

作为另一种解决方案,您可以编写一些增加动态用户ts的PHP代码。我只找到了一个example in German,但也许这对你有帮助。