---

--  ->   Любые вопросы от новичков  ->  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), невозможно их идентифицировать.

Добавлено: 17.06.14 10:58:19 #2



Регистрация: 22.02.09
Сообщений: 335


Обратиться по имени

Каждому объявления и так автоматически присваивается уникальный id при добавлении записи в БД.
Добавлено: 17.06.14 11:02:06 #3



Регистрация: 17.12.11
Сообщений: 58


Обратиться по имени

Evgeney S., мне нужно, чтобы ID показывался на странице с конкретным объявлением и в админке.
Добавлено: 17.06.14 11:05:14 #4



Регистрация: 17.12.11
Сообщений: 58


Обратиться по имени

Evgeney S., причем чтобы оплата статуса vip привязывалась к этому 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/


Создать статью Ответить
ВебСтолица.РУ: создай свой бесплатный сайт!  | Пожаловаться  
Движок: Amiro CMS