Модуль: Картинки для категорий

Тема в разделе "Shop-script", создана пользователем jujik, 6 ноя 2008.

Статус темы:
Закрыта.
  1. jujik

    jujik Создатель

    Регистр.:
    1 июл 2007
    Сообщения:
    42
    Симпатии:
    10
    Модуль: Картинки к категориям
    Автор: Жужик
    Описание: После установки данного модуля, Вы сможете добавлять картинки к категориям, аналогично как товарам. Модуль полезен для магазинов товары обьеденены в групы и нужна одна картинка для категории, всместо одинаковой картинки для групы товаров. (Пример: ноутбук Samsung R25 может быть 10 конфигураций. создаем категорию Samsung R25, загружаем картинки и описаные. потом в этой категории создаем 10 товаров(конфигурации) с ценами)

    Инструкция по установке:

    0. Распакуйте архив=). В каждом файлике дописаные изминения находяться между тегами <jujik></jujik>

    1. Создайте таблицу в БД магазина "SS_category_pictures", такой же структуры как и "SS_product_pictures", только вместо поля "productID"(SS_product_pictures) в таблице (SS_category_pictures) поле "categoryID".

    2. Добавьте в таблицу "SS_categories" поле "default_picture" такой же структуры как "default_picture"(SS_products)

    3. В файлик /cfg/tables.inc.php допишите
    if (!defined('CATEGORY_PICTURES'))
    {
    define('CATEGORY_PICTURES', 'SS_category_pictures');
    }

    4. Создайте папку "categories_pictures" в корне (в той же папке где папка "products_pictures"). Назначте ей права доступа "chmod 777"

    5. В файлик /core_functions/picture_functions.php допишите фунции для категорий
    /*****************************************************************************
    * *
    * CATEGORIES FUNCTIONS *
    * *
    *****************************************************************************/

    6. Сделайте соответствуюшие изминения в файлике /includes/category.php и /category.php

    7. Добавьте код в /templates/frontend/category.tpl.html то место где вы хотите оттображать картинки категорий
    Посмотреть вложение html.rar
     
    biznesoft нравится это.
  2. biznesoft

    biznesoft

    Регистр.:
    11 фев 2008
    Сообщения:
    510
    Симпатии:
    128
    А можно sql запрос для выполнения изложить (готовый).
    Спасибо.
    ps: постав хотя бы маленький хайд ато бариги украдут модуль.
     
  3. jujik

    jujik Создатель

    Регистр.:
    1 июл 2007
    Сообщения:
    42
    Симпатии:
    10
    У тебя стоит PHPMyAdmin ? можешь там сделать все.
     
  4. jujik

    jujik Создатель

    Регистр.:
    1 июл 2007
    Сообщения:
    42
    Симпатии:
    10
    Вот еще доработочка:
    в файлике /core_functions/category_functions.php

    1. В функции catGetCategoryById($categoryID) в db_query добавить default_picture, будет вот так:
    PHP:
    function catGetCategoryById($categoryID)
    {
        
    $categoryID = (int)$categoryID;     
        
    $q db_query("select categoryID, name, parent, products_count, description, picture, ".
            
    " products_count_admin, sort_order, viewed_times".
            
    ", allow_products_comparison".
            
    ", allow_products_search".
            
    ", default_picture".
            
    ", show_subcategories_products, meta_description, meta_keywords ".
            
    "  from ".CATEGORIES_TABLE.
            
    " where categoryID=$categoryID");
        return 
    db_fetch_row($q);
    }
    2. при удалении категории, что бы картинки удалялись, в этом же фалике измините функцию catDeleteCategory( $categoryID :(
    PHP:
    function catDeleteCategory$categoryID )
    {
        
    _deleteSubCategories$categoryID );

        
    db_query("UPDATE ".PRODUCTS_TABLE.
                
    " SET categoryID=1 WHERE categoryID=$categoryID");
        
    db_query("DELETE FROM ".CATEGORIES_TABLE.
            
    " WHERE parent=$categoryID and categoryID<>0") or die (db_error());
        
    $q db_query("SELECT picture FROM ".CATEGORIES_TABLE.
                
    " WHERE categoryID='".$categoryID."' and categoryID<>0");
        
    $r db_fetch_row($q);
        if (
    $r["picture"] && file_exists("./products_pictures/".$r["picture"])) 
            
    unlink("./products_pictures/".$r["picture"]);

        
    db_query("DELETE FROM ".CATEGORIES_TABLE.
            
    " WHERE categoryID=$categoryID and categoryID<>0") or die (db_error());
    // <jujik>
        
    $q db_query("SELECT filename, thumbnail, enlarged FROM ".CATEGORY_PICTURES.
                
    " WHERE categoryID='".$categoryID."'");
        while (
    $r db_fetch_row($q))
            {
            if (
    $r["filename"] && file_exists("./categories_pictures/".$r["filename"])) 
            
    unlink("./categories_pictures/".$r["filename"]);
            if (
    $r["thumbnail"] && file_exists("./categories_pictures/".$r["thumbnail"])) 
            
    unlink("./categories_pictures/".$r["thumbnail"]);
            if (
    $r["enlarged"] && file_exists("./categories_pictures/".$r["enlarged"])) 
            
    unlink("./categories_pictures/".$r["enlarged"]);
            }
        
    db_query("delete from ".CATEGORY_PICTURES." WHERE categoryID=$categoryID");
    //</jujik>
    }
     
    Welho® нравится это.
Статус темы:
Закрыта.