Изменить TCA fe_users
Пишу такой код в своем TCA:
Код:
$TCA['fe_users']['columns']['telephone']['config']['type'] = 'select'; |
Изменить можно все.
Почему может у вас не получаться: 1. Там где ваш код не объявлена глобальная переменная $TCA 2. Ваш код подключается до загрузки $TCA для fe_users |
Если я правильно понял Вас?
Цитата:
Код:
$GLOBALS['TCA'] ['fe_users']['columns']['telephone']['config']['type'] = 'select'; |
А как это можно проследить что за чем прогружаетса?
Цитата:
|
Цитата:
|
Может у вас еще что-то не задано для select? Поэтому ядро и не понимает, а выводить что-то по дефолту (просто поле).
Вы можете кикстартером сделать экст, который добавляет ваше собственное поле в fe_users нужного вам типа. И посмотрите как и что он сгенерит для этого. А потом можете повторить то же самое на существующем поле. |
Спасибо за то что направили в нужное русло все получилось
Спасибо за то что направили в нужное русло все получилось.
Все таки проблема была в : 1. $GLOBALS['TCA'] – это первый мой вывод; 2. Нужно было ее обновлять не в myext/tca.php, a myext/ext_tables.php Вот как все выгладить в коде: Код:
global $GLOBALS; |
Все работает, это просто вопрос для понятия полноты картины.
Но тут логически просто для понимания всей картины возникает вопрос:
1. В чём разница между Код:
$GLOBALS['TCA'] ['fe_users']['columns']['telephone']['config']['type'] = 'select'; Код:
$TCA['fe_users']['columns']['telephone']['config']['type'] = 'select'; 2. И почему я прописывал для других расширений Код:
$TCA['таблица]['columns']['поле']['config']['type'] = 'select'; Код:
GLOBALS['TCA'] ['fe_users']['columns']['telephone']['config']['type'] = 'select'; |
Если вы в начале своего кода объявите global $TCA; то разницы никакой. В таком случае переменная с локальной видимостью $TCA становиться ссылкой на $GLOBALS['TCA']. По умолчанию переменная $TCA (и ей подобные) не объявлены.
Что касается порядка. Возможно (это мое предположение!) сначала все xxx/tca.php подключаются, потом все xxx/ext_tables.php. Если оказывается что ваш экст подключается после изменяемого, то изменение сработает через любой файл. А если до - то только через ext_tables.php |
Не работает
Цитата:
Код:
global $TCA; |
Часовой пояс GMT +4, время: 01:39. |
Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot