Стилизация корзины

12 года 9 мес. назад #81 от donatory
Возникла необходимость стилизовать корзину в проекте и вот я полез сначала в minicart.tpl.php, а потом на форум joomlaforum.ru )))
там нашел упрощенный модуль корзины который мне подошел, как нельзя к стати.
Начал его под то, что дизайнер нарисовал подгонять и наткнулся на свои любимы грабли - незнание php
Так вот. Есть код файла minicart.tpl.php
<?php if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );
 
if($empty_cart) { ?>
 
    <div style="margin: 0 auto;">
    <?php if(!$vmMinicart) { ?>
    <?php }
    echo $VM_LANG->_('PHPSHOP_EMPTY_CART') ?>
    </div>
	<?php }
 
	$qnt = 0;
    // Loop through each row and build the table
    foreach( $minicart as $cart ) { 		
 
		foreach( $cart 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 );
		}
        if(!$vmMinicart) { // Build Minicart
            ?>
            <?php $qnt = $qnt + $cart['quantity']; 
        }
    }
 
if(!$vmMinicart) { ?>
<?php } ?>
<div style="font: 14px/7px Verdana,Arial,'sans serif'; color: #FFFFFF;margin-bottom:10px;">
<?php if ($total_products != '') echo $VM_LANG->_('PHPSHOP_PRODUCT_COUNT_NAME').':<div style="color: #ffef03; width:50%;float:right"><span style="font-size:18px;">'.$qnt.'</span> '.$VM_LANG->_('PHPSHOP_PRODUCT_FORM_UNIT_DEFAULT');?></div>
</div></br>
<div style="font: 14px/7px Verdana,Arial,'sans serif'; color: #FFFFFF;float:left;margin-bottom:10px;">
<?php  if ($total_price != '') echo $VM_LANG->_('PHPSHOP_PRODUCTS_PAYS').':&nbsp;<div style="color: #ffef03;float:right;">'.$total_price; ?></div>
</div>
</br>
<div style="font: 14px/7px Verdana,Arial,'sans serif'; color: #FFFFFF;" align="left">
<?php if ($total_products != '') { ?>
    <a href="index.php?page=shop.cart&amp;option=com_virtuemart" target="_self">
    <?php 
    echo $VM_LANG->_('PHPSHOP_CHECKOUT_TITLE')?>
    </a>
</div>
<?php }

Магазин при таком раскладе глючит не по детски. Понимаю что глюк из за этого участка кода:
if(!$vmMinicart) { ?>
<?php } ?>
<div style="font: 14px/7px Verdana,Arial,'sans serif'; color: #FFFFFF;margin-bottom:10px;">
<?php if ($total_products != '') echo $VM_LANG->_('PHPSHOP_PRODUCT_COUNT_NAME').':<div style="color: #ffef03; width:50%;float:right"><span style="font-size:18px;">'.$qnt.'</span> '.$VM_LANG->_('PHPSHOP_PRODUCT_FORM_UNIT_DEFAULT');?></div>
</div></br>
<div style="font: 14px/7px Verdana,Arial,'sans serif'; color: #FFFFFF;float:left;margin-bottom:10px;">
<?php  if ($total_price != '') echo $VM_LANG->_('PHPSHOP_PRODUCTS_PAYS').':&nbsp;<div style="color: #ffef03;float:right;">'.$total_price; ?></div>
</div>
</br>
<div style="font: 14px/7px Verdana,Arial,'sans serif'; color: #FFFFFF;" align="left">
<?php if ($total_products != '') { ?>
    <a href="index.php?page=shop.cart&amp;option=com_virtuemart" target="_self">
    <?php 
    echo $VM_LANG->_('PHPSHOP_CHECKOUT_TITLE')?>
    </a>
</div>
<?php }

и из за прописаных стилей в нем. Гдето я там в синтаксисе косячу. Кто может подсказать, где именно?

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

12 года 9 мес. назад #90 от donatory
Что ж. Отвечу самю Может кому пригодится.

Внимание! Пилим ядро. Совсем чуть чуть. А именно:

в файле administrator\components\com_virtuemart\languages\common\russian.php добавляем в любом месте
'PHPSHOP_PRODUCT_COUNT_NAME' => 'в корзине',
'PHPSHOP_PRODUCTS_PAYS' => 'на сумму',

Далее, находим и открываем components\com_virtuemart\themes\default\templates\common\minicart.tpl.php
И вставляем:
<?php if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );
 
if($empty_cart) { ?>
 
    <div style="margin: 0 auto;">
    <?php if(!$vmMinicart) { ?>
	<div class="emtycart">
    <?php }
    echo $VM_LANG->_('PHPSHOP_EMPTY_CART') ?>
	</div>
    </div>
	<?php }
 
	$qnt = 0;
    // Loop through each row and build the table
    foreach( $minicart as $cart ) { 		
 
		foreach( $cart 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 );
		}
        if(!$vmMinicart) { // Build Minicart
            ?>
            <?php $qnt = $qnt + $cart['quantity']; 
        }
    }
 
if(!$vmMinicart) { ?>
<div class="cartgoods">
<?php } ?>
<?php if ($total_products != '') echo $VM_LANG->_('PHPSHOP_PRODUCT_COUNT_NAME').':<div class="product_cart_total"><div class="product_cart_count">'.$qnt.'</div>&nbsp;'.$VM_LANG->_('PHPSHOP_PRODUCT_FORM_UNIT_DEFAULT').'</div>';?>
</div>
<div class="cartmoney">
<?php  if ($total_price != '') echo $VM_LANG->_('PHPSHOP_PRODUCTS_PAYS').':&nbsp;<div class="totalprice">'.$total_price.'</div>'; ?>
</div>
</br>
 
<?php if ($total_products != '') { ?>
	<div class="makeorder" align="left">
    <a href="index.php?page=shop.cart&amp;option=com_virtuemart" target="_self">
    <?php 
    echo $VM_LANG->_('PHPSHOP_CHECKOUT_TITLE')?>
    </a>
</div>
<?php }

Собственно, по мотивам можно и свое создать.))) Юзайте с удовольствием!))

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.