Поле выбора региона в типах контента

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО

Возможно ли добавить поле выбора страны и региона в типах контента?

#1 18 марта 2015 в 15:52
Здравствуйте сообщество! Подскажите пожалуйста: возможно ли добавить поле выбора страны и региона (как в профиле пользователя) в типах контента?
Например: Тип контента "доска объявлений", и при подаче объявления пользователь может выбирать страну и город.
Это предусмотрено? или я плохо смотрю?
#2 25 марта 2015 в 13:23
присоединяюсь к AlexWerner, ответьте профессионалы
#3 25 марта 2015 в 14:35
Пока профессионалы думают, отвечу я — пока не предусмотрено. Можно включить данный тип поля, закомментировав всего одну строчку кода (или заменить \system\fields\city.php строку 6 на "public $is_public = true;"), но оно сохранит и выведет только цифровой идентификатор города, а не его название. Чтобы исправить это, надо добавить ещё одну строчку кода в том же файле ( после строки 45 "public function parse($value){" добавить "$value = $this->getCity($value);"). И тогда в записи, в списке и в фильтре будет работать функция выбора поля. Но я лично не люблю такого рода "хирургические" вмешательства. Лучше будет если разработчики сами это сделают.
#4 25 марта 2015 в 16:32
Loadырь, Огромное огромное спасибо очень и очень полезно, хотелось бы задать ещё вопрос искал решение вывода значения поля city ( название города и страны ) из профиля пользователя в шаблон вывода контента ну например тот же default_item.tpl.php приемлемого решения не нашлось, подскажите как это реализовать
#5 25 марта 2015 в 19:59
Вячеслав Эст, Запись ниже выведет поле city из профиля пользователя в указанном шаблоне.
  1. <?php echo $user->city['name'];?>
Страна, увы недоступна из профиля. Для её извлечения надо прописать это, (желательно это делать не в шаблоне)
  1.  
  2. <?php
  3. $geo_model = cmsCore::getModel('geo');
  4.  
  5. $array_city = $geo_model->getCityParents($user->city['id']);
  6.  
  7. $user_country = $geo_model->filterEqual('id', $array_city['country_id'])->getFieldFiltered('geo_countries', name);
  8. $user_region = $geo_model->filterEqual('id', $array_city['region_id'])->getFieldFiltered('geo_regions', name);
  9. ?>
  10.  
и соответственно вывести их потом
  1.  
  2. <?php echo $user_country; ?>
  3. <?php echo $user_region; ?>
  4.  
#6 26 марта 2015 в 01:03
Loadырь, огромная благодарность за помощь и советы очень помогло и прояснило некоторые вещи
#7 26 марта 2015 в 02:14


Здравствуйте сообщество! Подскажите пожалуйста: возможно ли добавить поле выбора страны и региона (как в профиле пользователя) в типах контента?
Например: Тип контента "доска объявлений", и при подаче объявления пользователь может выбирать страну и город.
Это предусмотрено? или я плохо смотрю?

AlexWerner

У нас это давным давно сделано, сделал один парень но связь с ним утеряна, поправлял после первой обновы instantcms.ru/users/Evanescence спросите его, он поможет, в крайнем случае посмотрит как у нас сделано kiberkompas.com/posts?page=2 (см. второе превью статьи сверху) и воспроизведёт данный хак.

Естественно и в фильтре выводится, и если юзер добавляет статью объявление, то по нажатию добавить город всплывает окно в котором уже указан его город (если он его выбирал для своего профиля), может выбрать и любой другой.
#8 26 марта 2015 в 20:37
Вот спасибо за помощь люди добрые! Все, тему закрываю!
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.