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

Статус
В этой теме нельзя размещать новые ответы.

kid_mf

Создатель
Регистрация
11 Мар 2009
Сообщения
32
Реакции
1
Привет всем поедателям собак мотора Joomla... а точнее эл. магазина VM. Никак неполучается внутренними настройками изменить чтобы меню дополнительного товара, точнее свойств товара, было не ниспадающим списком, а по выбору radio box. Оно и смотрится лучше и читается. Как сие сделать и если нужно лезть в код, то в каком файле оно лежит?
 
Решение найдено!
Для этого нужно перелопатить файл 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;" />
    < ?         
} 
?>

Взято отсюда:
 
немного подправил и только так у меня заработал:
Код:
<?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:
 
Это делается через дочерние товары. На форуме обсуждалось.
Вот небольшое руководство к действию (см. вариант 2:(
 
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 } ?>
 
Опять беда! Радио бутоны отображаются в нормально, но тект режет и переносит на новую строку... а с каждым переносом на новую строку, переходит и радио. Что делать? Как быть? И кто в этом виноват? :)
 
У меня такое было с выпадающим списком...
Это где-то в шаблоне виртуемарта нужно искать... Давно было не помню...
 
А как все это сделать с зависимым товаром?
Кто нибудь знает?
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху