4

次のように、作成者と電子メールを指定された値に自動的に設定するようにtt_newsを構成できることを知っています。

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

しかし、代わりに現在ログに記録されているBEユーザーの情報から電子メールの名前を取得できますか?

4

2 に答える 2

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';
于 2012-06-23T16:32:23.603 に答える
0

あなたが望むことをする拡張機能があります。私はそれを自分で使用したことはありませんが、説明はかなり有望に思えます。

別の解決策として、動的ユーザー ts を追加する PHP コードを少し書くことができます。ドイツ語の例しか見つかりませんでしたが、とにかく役立つかもしれません。

于 2012-06-23T16:20:33.210 に答える