Не зарегистрирован
Приглашаем в
блог Amiro.CMS. Регулярные обзоры, опыт, решения, практикумы.
|
Форум -> Разработка плагинов, вопросы по API -> Получить полную ссылку на категорию/товар
|
Раздел для разработчиков. Обсуждение создания плагинов, вопросы и пожелания по API Amiro.CMS |
Добавлено: Получить полную ссылку на категорию/товар17.07.14 11:56:42 |
#16 |
Регистрация: 22.02.09
Сообщений: 472
Обратиться по имени |
А у меня этот код дает корректную полную ссылку (так же последняя версия CMS).
Вот полный код функции в front_functions.php:
function getUrl($id){
$oTable = AMI::getResourceModel(
'eshop_item/table',
array(
array(
'extModeOnConstruct' => 'common'
)
)
);
$oItem = $oTable->find($id);
$res = $oItem->getFullURL();
return $res;
}
возвращает katalog/internet-magazin/dlja-znanij/konstruktory/elementnye/atakujuschij-tigr |
|
|
| |
Добавлено: Получить полную ссылку на категорию/товар17.07.14 13:10:07 |
#17 |
Регистрация: 26.05.08
Сообщений: 984
Обратиться по имени |
Вставил прям копипастом, тот же результат.
Давайте я вставлю полностью то, что у меня написано. Может это поможет.
function cstGetUrl($id){
$oTable = AMI::getResourceModel(
'eshop_item/table',
array(
array(
'extModeOnConstruct' => 'common'
)
)
);
$oItem = $oTable->find($id);
$res = $oItem->getFullURL();
return $res;
}
function cstGetOrderItems($order_id=0) {
$resultHTML = '';
if ($order_id) {
//get all products in target order
$order_products = array();
$oOrderItemsModel = AMI::getResourceModel('eshop_order_item/table')->getList();
$oOrderItemsModel->addColumn('id_product');
$oOrderItemsModel->addSearchCondition(array('id_order' => $order_id));
$oOrderItemsModel->load();
foreach($oOrderItemsModel as $oOrderItemsModelItem){
array_push($order_products, $oOrderItemsModelItem->id_product);
}
$oItemsModel = AMI::getResourceModel('eshop_item/table')->getList();
$oItemsModel
->addColumn('id')
->addColumn('name')
->addColumn('price')
->addColumn('ext_popup_picture')
->addWhereDef(
DB_Query::getSnippet('AND %s in (%s)')
->plain('id')
->implode($order_products)
)
->load();
foreach($oItemsModel as $oItemsModelItem) {
$fullUrl = cstGetUrl($oItemsModelItem->id);
$resultHTML .= '<div class="ordmer">' .
'<div class="comim"><img src="' . $oItemsModelItem->ext_popup_picture . '" alt=""></div>' .
'<div class="blopis">' .
'<a class="u_tit" href="' . $fullUrl . '">' . $oItemsModelItem->name . '</a>' .
'<div class="prezzo"><b>' . number_format($oItemsModelItem->price, 0, '', ' ') . '</b><span>i</span></div>' .
'</div>' .
'</div>';
}
}
return $resultHTML;
} |
|
|
| |
Добавлено: Получить полную ссылку на категорию/товар17.07.14 15:31:24 |
#18 |
Регистрация: 21.03.07
Сообщений: 261
Обратиться по имени |
В случае Евгения Лапина оказалась работа со списком, для нее функционирует следующий код:
$aProductIds = array(....); // id товаров
$oList = AMI::getResourceModel(
'eshop_item/table',
array(
array(
'extModeOnConstruct' => 'common'
)
)
)
->getList()
->addColumn('id')
->addColumn('name')
->addColumn('lang')
->addColumn('sublink')
->addWhereDef(
DB_Query::getSnippet('AND %s in (%s)')
->plain('i.id')
->implode($aProductIds)
)
->load();
foreach($oList as $oItem) {
// $oItem->getFullURL();
}
|
|
|
| |
|
|
Чтобы добавить сообщение, пожалуйста зарегистрируйтесь и/или войдите в систему. |
Всего тем: 6661
Всего сообщений: 27851
Всего зарегистрированных пользователей: 26739
Последний зарегистрированный пользователь:
Modul-IT