1. Уважаемые пользователи, прежде чем ответить в теме или создать новую,
    внимательно ознакомьтесь с правилами раздела

    Кому лень работать или руки не оттуда - пользуйтесь услугами специалистов
  2. Не задавайте глупых вопросов "Посоветуйте какой-нибудь компонент.."

    Есть JED!!! Ищите там!!!

VirtueMart свойство товара (из ниспадающего меню сделать radio box)

Тема в разделе "Joomla", создана пользователем kid_mf, 3 мар 2010.

Информация :
  • Уважаемые пользователи, прежде чем ответить в теме или создать новую, внимательно ознакомьтесь с правилами раздела
  • Не задавайте глупых вопросов "Посоветуйте какой-нибудь компонент.." Есть JED!!! Ищите там!!!
  • Аналоги ищите там же - на JED!!!
  • Новая версия? - У кого будет - тот выложит!
Статус темы:
Закрыта.
Модераторы: arman29, DMS, Genk0, NightHunter
  1. kid_mf

    kid_mf Создатель

    Регистр.:
    11 мар 2009
    Сообщения:
    32
    Симпатии:
    1
    Привет всем поедателям собак мотора Joomla... а точнее эл. магазина VM. Никак неполучается внутренними настройками изменить чтобы меню дополнительного товара, точнее свойств товара, было не ниспадающим списком, а по выбору radio box. Оно и смотрится лучше и читается. Как сие сделать и если нужно лезть в код, то в каком файле оно лежит?
     
  2. MrScruff

    MrScruff

    Регистр.:
    9 сен 2008
    Сообщения:
    279
    Симпатии:
    66
    Решение найдено!
    Для этого нужно перелопатить файл components/com_virtuemart/themes/default/templates/product_details/includes/addtocart_advanced_attribute.tpl.php

    И вставить туда код:
    PHP:
    <?php if( !defined'_VALID_MOS' ) && !defined'_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' ); 

    foreach(
    $attributes as $attribute) {        
        
    ?>
        <div class="vmAttribChildDetail" style="float:left;margin:3px;">
        <?php 
        
    foreach ( $attribute['options_list'] as $options_item ) { ?>
                <div>
                <?php if( isset( $options_item['display_price']) ) : ?>
                <input type="radio" style="margin-top: 15px;" id="<?php echo $attribute['titlevar'] ?/>_field" name="<?php echo $attribute['titlevar'].$attribute['product_id'?>" value="<?php echo $options_item['base_var'?>"><?php echo $options_item['base_value'?> (<?php echo $options_item['sign'].$options_item['display_price'?>)<br />
                <?php else : ?>
                <input type="radio" style="margin-top: 15px;" id="<?php echo $attribute['titlevar'] ?/>_field" name="<?php echo $attribute['titlevar'].$attribute['product_id'?>" value="<?php echo $options_item['base_var'?>"><?php echo $options_item['base_value'?><br />
                <?php endif; ?>
                </div>
        < ? } ?>
        
        </div>
        <br style="clear:both;" />
        < ?         

    ?>
    Взято отсюда:
    Перейти по ссылке
     
    kid_mf и Skyscraper нравится это.
  3. Skyscraper

    Skyscraper Постоялец

    Регистр.:
    22 янв 2010
    Сообщения:
    112
    Симпатии:
    11
    немного подправил и только так у меня заработал:
    Код:
    <?php if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' ); 
    foreach($attributes as $attribute) {        
        ?>
        <div class="vmAttribChildDetail" style="float:left;margin:3px;">
        <?php 
        foreach ( $attribute['options_list'] as $options_item ) { ?>
                <div>
                <?php if( isset( $options_item['display_price']) ) : ?>
                <input type="radio" style="margin-top: 15px;" id="<?php echo $attribute['titlevar'] ?>_field" name="<?php echo $attribute['titlevar'].$attribute['product_id'] ?>" value="<?php echo $options_item['base_var'] ?>"><?php echo $options_item['base_value'] ?> (<?php echo $options_item['sign'].$options_item['display_price'] ?>)<br />
                <?php else : ?>
                <input type="radio" style="margin-top: 15px;" id="<?php echo $attribute['titlevar'] ?>_field" name="<?php echo $attribute['titlevar'].$attribute['product_id'] ?>" value="<?php echo $options_item['base_var'] ?>"><?php echo $options_item['base_value'] ?><br />
                <?php endif; ?>
                </div>
        <?php } ?>
        </div>
        <br style="clear:both;" />
    <?php } ?>
    зы: спасибо! =)
    может кто знает как сделать напротив каждого свойства отдельно корзину и выбор количества товара? :nezn:
     
    kid_mf нравится это.
  4. MrScruff

    MrScruff

    Регистр.:
    9 сен 2008
    Сообщения:
    279
    Симпатии:
    66
    Это делается через дочерние товары. На форуме обсуждалось.
    Вот небольшое руководство к действию (см. вариант 2:(
    Перейти по ссылке
     
    kid_mf нравится это.
  5. kid_mf

    kid_mf Создатель

    Регистр.:
    11 мар 2009
    Сообщения:
    32
    Симпатии:
    1
    Skyscraper спс большое, именно то, что нужно. Но есть проблемка - титлы свойств не отображаются.

    Добавлено через 56 минут
    Усё... нашел... одну строчну нужно было дописать. Весь код выглядит вот так:

    <?php if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );
    foreach($attributes as $attribute) {
    ?>
    <div class="vmAttribChildDetail" style="float: left;text-align:right;margin:3px;">
    <label for="<?php echo $attribute['titlevar'] ?>_field"><?php echo $attribute['title'] ?></label>:
    </div>
    <div class="vmAttribChildDetail" style="float:left;margin:3px;">
    <?php
    foreach ( $attribute['options_list'] as $options_item ) { ?>
    <div>
    <?php if( isset( $options_item['display_price']) ) : ?>
    <input type="radio" style="margin-top: 15px;" id="<?php echo $attribute['titlevar'] ?>_field" name="<?php echo $attribute['titlevar'].$attribute['product_id'] ?>" value="<?php echo $options_item['base_var'] ?>"><?php echo $options_item['base_value'] ?> (<?php echo $options_item['sign'].$options_item['display_price'] ?>)<br />
    <?php else : ?>
    <input type="radio" style="margin-top: 15px;" id="<?php echo $attribute['titlevar'] ?>_field" name="<?php echo $attribute['titlevar'].$attribute['product_id'] ?>" value="<?php echo $options_item['base_var'] ?>"><?php echo $options_item['base_value'] ?><br />
    <?php endif; ?>
    </div>
    <?php } ?>
    </div>
    <br style="clear:both;" />
    <?php } ?>
     
  6. kid_mf

    kid_mf Создатель

    Регистр.:
    11 мар 2009
    Сообщения:
    32
    Симпатии:
    1
    Опять беда! Радио бутоны отображаются в нормально, но тект режет и переносит на новую строку... а с каждым переносом на новую строку, переходит и радио. Что делать? Как быть? И кто в этом виноват? :)
     
  7. abdulidze

    abdulidze Постоялец

    Регистр.:
    24 май 2008
    Сообщения:
    51
    Симпатии:
    0
    У меня такое было с выпадающим списком...
    Это где-то в шаблоне виртуемарта нужно искать... Давно было не помню...
     
  8. flyingspook

    flyingspook Писатель

    Регистр.:
    19 июн 2010
    Сообщения:
    3
    Симпатии:
    0
    А как все это сделать с зависимым товаром?
    Кто нибудь знает?
     
Статус темы:
Закрыта.