Вопрос по Virtuemart

(Ответов: 5, Просмотров: 2050)
  1. Дипломник Аватар для hotsman
    • Регистрация: 14.06.2011
    • Сообщений: 213
    • Репутация: 3
    Привет!
    В настройках отображения товаров задал табличный! Сейчас редактирую код для нормального отображения на сайте:


    PHP код:
    <?php if( !defined'_VALID_MOS' ) && !defined'_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );
    mm_showMyFileName(__FILE__); ?>

    <?php echo $buttons_header // The PDF, Email and Print buttons ?>
    <?php 
    echo $browsepage_header // The heading, the category description ?>
    <?php 
    echo $parameter_form // The Parameter search form ?>
    <?php 
    echo $orderby_form // The sort-by, order-by form PLUS top page navigation ?>

    <?php
    $data 
    =array(); // Holds the rows of products
    $i 1$row 0// Counters

    // Table header
    $tableheader[] = $VM_LANG->_('PHPSHOP_CART_NAME');
    $tableheader[] = $VM_LANG->_('PHPSHOP_CART_SKU');
    if( 
    _SHOW_PRICES && $auth['show_prices'] ) {
        
    $tableheader[] = $VM_LANG->_('PHPSHOP_CART_PRICE','class="name"');
    }

    $tableheader[] = $VM_LANG->_('PHPSHOP_PRODUCT_DESC_TITLE');
    if( 
    _SHOW_PRICES && $auth['show_prices'] && USE_AS_CATALOGUE != '1' ) {
        
    $tableheader[] = $VM_LANG->_('PHPSHOP_CART_ACTION');
    }

    // Creates a new HTML_Table object that will help us
    // to build a table holding all the products
    $table = new HTML_Table('width="100%"');

    $table->addRow$tableheader'class="sectiontableheader"''th'true );

    foreach( 
    $products as $product ) {
            
            foreach( 
    $product as $attr => $val ) {
                
    // Using this we make all the variables available in the template
                // translated example: $this->set( 'product_name', $product_name );
                
    $this->set$attr$val );
            }
            
            
    $data[$row][] = '<a href="'.$product['product_flypage'].'" title="'.$product['product_name'].'">'.$product['product_name'].'</a>';
            
    $data[$row][] = $product['product_sku'];
            if( 
    _SHOW_PRICES && $auth['show_prices'] ) {
                
    $data[$row][] = $product['product_price'];
            }
            
            
    $data[$row][] = $product['product_s_desc'];
            if( 
    $product['has_addtocart'] ) {
                
    $data[$row][] = $product['form_addtocart'];
            }
            else {
                
    $data[$row][] = '<a href="'.$product['product_flypage'].'" title="'.$product['product_name'].'">'
                                
    .    $product['product_details']
                                .    
    '</a>';
            }
            
            
    $row++;
            
    }


    // Loop through each row and build the table
    foreach($data as $key => $value) {
        
        
    $table->addRow$data[$key], 'class="sectiontableentry'.$i.'"''td'true );
        
    $i $i == 1;
    }
    // Display the table
    echo $table->toHtml();
    ?>
    <br class="clr" /><br />
    <?php echo $browsepage_footer ?>
    <?php 
    // Show Featured Products
    if( $this->get_cfg'showFeatured')) {
        
    /* featuredproducts(random, no_of_products,category_based) no_of_products 0 = all else numeric amount
        edit featuredproduct.tpl.php to edit layout */
        
    echo $ps_product->featuredProducts(true,10,true);
    ?>
    как тут каждом столбцу в таблице, например цена или описание задать class, чтобы потом прописать стили! тут нашел только один class -
    PHP код:
    $table->addRow$tableheader'class="sectiontableheader"''th'true ); 
    • 0
  2. Студент Аватар для WarDJ
    • Регистрация: 18.05.2011
    • Сообщений: 70
    • Репутация: 36
    • Webmoney BL: ?
    как тут каждом столбцу - это вам не друпал =) это джумла. как минимум нужно доработку делать небольший скрипт который посчитает сколько th и примерно будет выглядеть классы вот так sectiontableheader_1, sectiontableheader_2 и т.е. свои классы задать нереально. кроме доработок
    • 1

    Спасибо сказали:

    hotsman(22.01.2012),
  3. Новичок Аватар для vicatsu
    • Регистрация: 21.01.2012
    • Сообщений: 12
    • Репутация: 2
    Там в настройках VirtueMart есть выбор шаблона оформления по умолчанию стоит default. Путь к нему: components/com_virtuemart/themes Вот нужно открыть его и посмотреть интересующие моменты, а точнее папка templates Лучше не изменять default, а создать свой на его примере, ну и потом выбрать его в настройках VirtueMart.
    • 1

    Спасибо сказали:

    hotsman(22.01.2012),
  4. Дипломник Аватар для hotsman
    • Регистрация: 14.06.2011
    • Сообщений: 213
    • Репутация: 3
    да это я всё знаю!

    просто хотел в таблице всё сделать,а там фиг знает как задавать классы чему-то, дабы потом в стилях прописать!
    • 0
  5. Software Engineer Аватар для Zvеr
    • Регистрация: 07.02.2010
    • Сообщений: 603
    • Репутация: 228
    • Webmoney BL: ?
    Там в нескольких местах можно указать класс, то что вы нашли - для заголовков таблицы, а это, я так понимаю - для столбцов:
    Код:
    $table->addRow( $data[$key], 'class="sectiontableentry'.$i.'"', 'td', true );
    То есть, дописав:
    Код:
    $table->addRow( $data[$key], 'class="sectiontableentry'.$i.' myclass"', 'td', true );
    Вы добавите к столбцу еще один класс.
    • 0
  6. Дипломник Аватар для Roman3211
    • Регистрация: 26.10.2011
    • Сообщений: 191
    • Репутация: 24
    Не самый оригинальный способ, накидал на коленке

    PHP код:
    <?php if( !defined'_VALID_MOS' ) && !defined'_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );
    mm_showMyFileName(__FILE__); ?>

    <?php echo $buttons_header // The PDF, Email and Print buttons ?>
    <?php 
    echo $browsepage_header // The heading, the category description ?>
    <?php 
    echo $parameter_form // The Parameter search form ?>
    <?php 
    echo $orderby_form // The sort-by, order-by form PLUS top page navigation ?>

    <?php
    $data 
    =array(); // Holds the rows of products
    $i 1$row 0// Counters

    // Table header
    $tableheader[] = $VM_LANG->_('PHPSHOP_CART_NAME');
    $tableheader[] = $VM_LANG->_('PHPSHOP_CART_SKU');
    if( 
    _SHOW_PRICES && $auth['show_prices'] ) {
        
    $tableheader[] = $VM_LANG->_('PHPSHOP_CART_PRICE');
    }
    $tableheader[] = $VM_LANG->_('PHPSHOP_PRODUCT_FORM_THUMB_IMAGE');
    $tableheader[] = $VM_LANG->_('PHPSHOP_PRODUCT_DESC_TITLE');
    if( 
    _SHOW_PRICES && $auth['show_prices'] && USE_AS_CATALOGUE != '1' ) {
        
    $tableheader[] = $VM_LANG->_('PHPSHOP_CART_ACTION');
    }

    // Creates a new HTML_Table object that will help us
    // to build a table holding all the products
    $table = new HTML_Table('width="100%"');

    $attributes[] = "class='aaa'";
    $attributes[] = "class='bbb'";
    $attributes[] = "class='ccc'";
    $attributes[] = "class='ddd'";
    $attributes[] = "class='eee'";
    $attributes[] = "class='fff'";

    $table->addRow$tableheader'class="sectiontableheader"''th'true );

    $table->setRowAttributes($row$attributes$inTR false);

    foreach( 
    $products as $product ) {
            
            foreach( 
    $product as $attr => $val ) {
                
    // Using this we make all the variables available in the template
                // translated example: $this->set( 'product_name', $product_name );
                
    $this->set$attr$val );
                
            }
            
            
    $data[$row][] = '<a href="'.$product['product_flypage'].'" title="'.$product['product_name'].'">'.$product['product_name'].'</a>';
            
    $data[$row][] = $product['product_sku'];
            if( 
    _SHOW_PRICES && $auth['show_prices'] ) {
                
    $data[$row][] = $product['product_price'];
            }
            
    $data[$row][] = '<a href="'.$product['product_flypage'].'" title="'.$product['product_name'].'">'
                            
    ps_product::image_tag$product['product_thumb_image'] )
                            . 
    '</a>';
            
    $data[$row][] = $product['product_s_desc'];
            if( 
    $product['has_addtocart'] ) {
                
    $data[$row][] = $product['form_addtocart'];
            }
            else {
                
    $data[$row][] = '<a href="'.$product['product_flypage'].'" title="'.$product['product_name'].'">'
                                
    .    $product['product_details']
                                .    
    '</a>';
            }
            
            
    $row++;
            
    }

    // Loop through each row and build the table
    foreach($data as $key => $value) {
        
    $table->addRow$data[$key], 'class="sectiontableentry'.$i.'"''td'true );
        
    $table->setRowAttributes($i$attributes$inTR false);
        
    $i $i == 1;
        
    }

    // Display the table
    echo $table->toHtml();
    ?>
    <br class="clr" /><br />
    <?php echo $browsepage_footer ?>
    <?php 
    // Show Featured Products
    if( $this->get_cfg'showFeatured')) {
        
    /* featuredproducts(random, no_of_products,category_based) no_of_products 0 = all else numeric amount
        edit featuredproduct.tpl.php to edit layout */
        
    echo $ps_product->featuredProducts(true,10,true);
    ?>
    <?php 
    echo $recent_products ?>
    а вообще в файле Table.php описывается класс при помощи которого создаётся данная таблица
    полистай файл, может поудобнее функцию найдёшь чем моя setRowAttributes
    Они лучшие http://camelhost.net/
    • 0

Похожие темы

Темы Раздел Ответов Последний пост
Joomla+Virtuemart поиск не разбивает на страницы
Joomla 0 15.12.2011 14:36
Как убрать подчеркивание картинки товара в Virtuemart?
Joomla 5 08.11.2011 21:24
Ошибка в VirtueMart
Joomla 4 04.11.2011 14:10
Подскажите партнерку для магазина на joomla virtuemart
Партнерские программы 0 30.08.2011 12:38
Создаю сайты (Wordpress, DLE, Joomla). Интернет-магазины (Shop-script, Oscommerce, Virtuemart). Поддерживаю и дорабатываю IT-проекты.
Создание сайтов 1 08.06.2011 00:41

У кого попросить инвайт?

Вы можете попросить инвайт у любого модератора:

Информеры