KoVaLsKy 59 Опубликовано 6 мая, 2013 Жалоба Share Опубликовано 6 мая, 2013 для дополнительных в таблицу 'products_images' добавляем поле 'image_description' типа TEXT ALTER TABLE products_images ADD image_description TEXT NULL AFTER image_name; для основной в таблицу 'products' добавляем поле 'products_image_description' типа TEXT ALTER TABLE products ADD products_image_description TEXT NULL AFTER products_image; ------------------------------------ файл www\inc\vam_get_products_mo_images.inc.php для дополнительных вместо $mo_query = "select image_id, image_nr, image_name from " . TABLE_PRODUCTS_IMAGES . " where products_id = '" . $products_id ."' ORDER BY image_nr"; ставим три строки //$mo_query = "select image_id, image_nr, image_name from " . TABLE_PRODUCTS_IMAGES . " where products_id = '" . $products_id ."' ORDER BY image_nr"; // описания к дополнительным картинкам $mo_query = "select image_id, image_nr, image_name, image_description from " . TABLE_PRODUCTS_IMAGES . " where products_id = '" . $products_id ."' ORDER BY image_nr"; т.е. image_description дополнительно запрашиваем ----------------------------------- файл www\inc\vam_get_products_image.inc.php для основной вместо $product_query = "select products_image from " . TABLE_PRODUCTS . " where products_id = '" . $products_id . "'"; ставим три строки //$product_query = "select products_image from " . TABLE_PRODUCTS . " where products_id = '" . $products_id . "'"; // описание к картинке $product_query = "select products_image, products_image_description from " . TABLE_PRODUCTS . " where products_id = '" . $products_id . "'"; т.е. products_image_description дополнительно запрашиваем в возврате функции вместо return $products_image['products_image']; ставим две строки //return $products_image['products_image']; return $products_image['products_image,products_image_description']; ------------------------------------- файл www\admin\includes\modules\products_images.php физически добавляем вывод поля в админке для дополнительных после выпадающего списка с директорией загрузки // BOF Add existing image в самом низу, в строке примерно 60 echo '<br />' . TEXT_PRODUCTS_IMAGE_UPLOAD_DIRECTORY . '<br />' . vam_draw_pull_down_menu('mo_pics_upload_dir_image_'.$i,$dir_list, dirname($mo_images[$i]["image_name"]).'/'); сначала нужно закрыть TD echo '<br />' . TEXT_PRODUCTS_IMAGE_UPLOAD_DIRECTORY . '<br />' . vam_draw_pull_down_menu('mo_pics_upload_dir_image_'.$i,$dir_list, dirname($mo_images[$i]["image_name"]).'/'). '</td>'; потом ниже добавить стороку // Описание дополнительной картинки (textarea) echo '<td class="main">Описание дополнительной картинки '. ($i +1).'<br />' . vam_draw_textarea_field('mo_pics_descr_'.$i, 'hard', 76, 7, $mo_images[$i]["image_description"]); для основной после выпадающего списка с директорией загрузки // BOF Add existing image в строке примерно 39 echo '<br />' . TEXT_PRODUCTS_IMAGE_UPLOAD_DIRECTORY . '<br />' . vam_draw_pull_down_menu('upload_dir_image_0',$dir_list, dirname($pInfo->products_image).'/'); сначала нужно закрыть TD echo '<br />' . TEXT_PRODUCTS_IMAGE_UPLOAD_DIRECTORY . '<br />' . vam_draw_pull_down_menu('upload_dir_image_0',$dir_list, dirname($pInfo->products_image).'/'). '</td>'; потом ниже добавить стороку // Описание основной картинки (textarea) echo '<td class="main">Описание основной картинки<br />' . vam_draw_textarea_field('main_pics_descr', 'hard', 76, 7, $pInfo->products_image_description); ---------------------------- файл www\includes\modules\product_info.php для дополнительных в строке около 163 после 'PRODUCTS_MO_POPUP_IMAGE' => $products_mo_popup_link, добавляем новую метку 'PRODUCTS_MO_IMAGE_DESCRIPTION' => $img['image_description'], для основной после $info->assign('PRODUCTS_IMAGE', $image); добавляем строку $info->assign('PRODUCTS_IMAGE_DESCRIPTION', $product->data['products_image_description']); --------------------------- файл www\admin\includes\classes\categories.php для дополнительных в функции function create_MO_PICS после 'image_name' => vam_db_prepare_input($mo_products_image_name), добавляем строку // Описание дополнительной картинки 'image_description' => vam_db_prepare_input($products_data['mo_pics_descr_'.$mo_image_number]) ); примерно в районе 990 строки, в запросе vam_db_query("INSERT INTO ".TABLE_PRODUCTS_IMAGES." после image_nr = '".$mo_img['image_nr']."', добавить /* Описание дополнительной картинки */ image_description = '".$mo_img['image_description']."', для основной в строке, где формируется массив полей для записи в базу (примерно 560) $sql_data_array = array ('products_quantity' => vam_db_prepare_input($products_data['products_quantity']), .... очень длинная строка добавить в конец или начало массива 'products_image_description' => vam_db_prepare_input($products_data['main_pics_descr']), ну и выше вставить комментарий, чтобы помнить про это изменение // Описание основной картинки ---------------------------- шаблон карточки товара для дополнительных в цикле {foreach name=mo_pic item=img_values from=$mo_img} используем нашу метку {$img_values.PRODUCTS_MO_IMAGE_DESCRIPTION} вывод конкретной доп.картинки в любом месте шаблона (не в цикле): <img src="{$mo_img[0].PRODUCTS_MO_IMAGE}" /> Где 0 — первая дополнительная картинка, 1 — вторая и так далее. Для того, чтобы при отсутствии изображения исключить вывод, добавим условие выводить только при наличии: {if $mo_img[0].PRODUCTS_MO_IMAGE}<img src="{$mo_img[0].PRODUCTS_MO_IMAGE}" />{/if} соответственно для доп.описаний будет так: {$mo_img[0].PRODUCTS_MO_IMAGE_DESCRIPTION} Где 0 — первое доп. описание, 1 — второе и так далее. для основной используем метку {$PRODUCTS_IMAGE_DESCRIPTION} Взято http://vamshop.ru/forum/tracker/issue-93-%D0%B4%D0%BE%D0%B1%D0%B0%D0%B2%D0%B8%D1%82%D1%8C-%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D1%8F-%D0%B4%D0%BB%D1%8F-%D0%BA%D0%B0%D1%80%D1%82%D0%B8%D0%BD%D0%BE%D0%BA/ Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения