Добавлено: ID объявления 17.06.14 09:29:15
#1
Регистрация: 17.12.11
Сообщений : 58
Обратиться по имени
Подскажите, пожалуйста, как присвоить индивидуальный ID каждому объявлению, чтобы он задавался автоматически при создании каждого объявления? А то сейчас объявления сами по себе (пример http://femina-maskulina.ru/doska-besplatnyh-objavlenij/transport/legkovye-avtomobili-14#ccat), невозможно их идентифицировать.
Добавлено: ID объявления 17.06.14 10:58:19
#2
Регистрация: 22.02.09
Сообщений : 335
Обратиться по имени
Каждому объявления и так автоматически присваивается уникальный id при добавлении записи в БД.
Добавлено: ID объявления 17.06.14 11:02:06
#3
Регистрация: 17.12.11
Сообщений : 58
Обратиться по имени
Evgeney S. , мне нужно, чтобы ID показывался на странице с конкретным объявлением и в админке.
Добавлено: ID объявления 17.06.14 11:05:14
#4
Регистрация: 17.12.11
Сообщений : 58
Обратиться по имени
Evgeney S. , причем чтобы оплата статуса vip привязывалась к этому ID
Добавлено: ID объявления 18.06.14 11:10:10
#5
Регистрация: 22.10.12
Сообщений : 35
Обратиться по имени
Татьяна (femina): Подскажите, пожалуйста, как присвоить индивидуальный ID каждому объявлению, чтобы он задавался автоматически при создании каждого объявления? А то сейчас объявления сами по себе (пример http://femina-maskulina.ru/doska-besplatnyh-objavlenij/transport/legkovye-avtomobili-14#ccat), невозможно их идентифицировать.
ID у каждого объявления уже есть изначально, как правильно заметили ранее, но по умолчанию он не отображается.
Для того, чтобы столбец с ID появился в панели администрирования, нужно добавить свой обработчик события on_list_columns в локальный php-код (_local/common_functions.php) -
AMI_Event::addHandler('on_list_columns', 'cstClassifiedsListHandler', 'classifieds');
function cstClassifiedsListHandler($name, array $aEvent, $handlerModId, $srcModId){
$aEvent['oView']->addColumnType('id', 'int')->setColumnWidth('id', 'extra-narrow');
$aEvent['aLocale']['list_col_id'] = 'ID';
return $aEvent;
}
Можно добавить возможность сортировки по столбцу -
AMI_Event::addHandler('on_sort_columns', 'cstClassifiedsListSortHandler', 'classifieds');
function cstClassifiedsListSortHandler($name, array $aEvent, $handlerModId, $srcModId){
$aEvent['aColumns'][] = 'id';
return $aEvent;
}
На внешней части сайта ID объявления доступен по переменной id. На примере сета item_details шаблона classifieds.tpl, выводим идентификатор на странице объявления -
id : ##id##
Принцип работы шаблонов описан в документации - http://manual.amiro.ru/doc/integracija-dizajna/nastrojka-shablonov/nastrojka-shablonov/chto-takoe-shablony
Управление событиями - http://manual.amiro.ru/api/introduction/moduli-amirocms/sobytija-modulja/