Jump to content


Photo
* * * * * 1 votes

Прошу совета со второй ценой


Best Answer CB9TOIIIA , 17 April 2016 - 19:51

0_a4180_11986795_orig.png





    <?php foreach ($view->itemsHtml as $itemKey => $itemHtml) : ?>
<?php

$items = $order->getItems(false);
$items2 = $items->$itemKey->params[buttons][addAlertText];
$cleanlable = str_replace('добавлен в корзину!', '', $items2);
$cleanlable2 = str_replace('добавлена в корзину!', '', $cleanlable);
//jbdump($cleanlable2,0,'Ищем лэйблы');

 ?>
        <tr class="jbcart-row jsCartTableRow js<?php echo $itemKey; ?>" data-key="<?php echo $itemKey; ?>">
            <td class="jbcart-image">
                <?php if ($config->get('tmpl_image_show', 1)) {
                    echo $itemHtml['image'];
                } ?>
            </td>
            <td class="jbcart-name">
            <?php
            $newname = str_replace('</a>', ' ( '.$cleanlable2.')</a>', $itemHtml['name']);
            echo $newname;


            ?>

                <?php if ($config->get('tmpl_sku_show', 1)) {
                    echo $itemHtml['sku'];
                } ?>
                <?php echo $itemHtml['params']; ?>
            </td>
            <td class="jbcart-price"><?php
                if ($config->get('tmpl_price4one', 1)) {
                    echo $itemHtml['price4one'];
                } ?>
            </td>
            <td class="jbcart-quantity"><?php
                if ($config->get('tmpl_quntity', 1)) {
                    echo $itemHtml['quantityEdit'];
                } ?>
            </td>
            <td class="jbcart-subtotal">
                <?php if ($config->get('tmpl_subtotal', 1)) {
                    echo $itemHtml['totalsum'];
                } ?>
            </td>
            <td class="jbcart-delete">
                <a class="btn btn-danger btn-xs btn-small round jsDelete">
                    <?php echo JText::_('JBZOO_CART_DELETE'); ?>
                </a>
            </td>
        </tr>
    <?php endforeach; ?>

или так:
0_a4181_2684ef41_orig.png
 
 
 

    <?php foreach ($view->itemsHtml as $itemKey => $itemHtml) : ?>
<?php

$items = $order->getItems(false);
$items2 = $items->$itemKey->params[buttons][addAlertText];
$cleanlable = str_replace('добавлен в корзину!', '', $items2);
$cleanlable2 = str_replace('добавлена в корзину!', '', $cleanlable);
$cleanlable2 = rtrim($cleanlable2);
//jbdump($cleanlable2,0,'Ищем лэйблы');

 ?>
        <tr class="jbcart-row jsCartTableRow js<?php echo $itemKey; ?>" data-key="<?php echo $itemKey; ?>">
            <td class="jbcart-image">
                <?php if ($config->get('tmpl_image_show', 1)) {
                    echo $itemHtml['image'];
                } ?>
            </td>
            <td class="jbcart-name">
            <?php
            $newname = str_replace('</a>', ' ('.$cleanlable2.')</a>', $itemHtml['name']);
            echo $newname;


            ?>

                <?php if ($config->get('tmpl_sku_show', 1)) {
                    echo $itemHtml['sku'];
                } ?>
                <?php echo $itemHtml['params']; ?>
            </td>
            <td class="jbcart-price"><?php
                if ($config->get('tmpl_price4one', 1)) {
                    echo $itemHtml['price4one'];
                } ?>
            </td>
            <td class="jbcart-quantity"><?php
                if ($config->get('tmpl_quntity', 1)) {
                    echo $itemHtml['quantityEdit'];
                } ?>
            </td>
            <td class="jbcart-subtotal">
                <?php if ($config->get('tmpl_subtotal', 1)) {
                    echo $itemHtml['totalsum'];
                } ?>
            </td>
            <td class="jbcart-delete">
                <a class="btn btn-danger btn-xs btn-small round jsDelete">
                    <?php echo JText::_('JBZOO_CART_DELETE'); ?>
                </a>
            </td>
        </tr>
    <?php endforeach; ?>

и наверное красивый последний вариант:

0_a4182_26577576_orig.png
 

    <?php foreach ($view->itemsHtml as $itemKey => $itemHtml) : ?>
<?php

$items = $order->getItems(false);
$items2 = $items->$itemKey->params[buttons][addAlertText];


$cleanlable = str_replace('добавлен в корзину!', '', $items2);
$cleanlable2 = str_replace('добавлена в корзину!', '', $cleanlable);
$cleanlable2 = rtrim($cleanlable2);
//jbdump($cleanlable2,0,'Ищем лэйблы');

 ?>
        <tr class="jbcart-row jsCartTableRow js<?php echo $itemKey; ?>" data-key="<?php echo $itemKey; ?>">
            <td class="jbcart-image">
                <?php if ($config->get('tmpl_image_show', 1)) {
                    echo $itemHtml['image'];
                } ?>
            </td>
            <td class="jbcart-name">
            <?php

            $newname = str_replace('</a>', ' ('.$cleanlable2.')</a>', $itemHtml['name']);

             if (preg_match('/Товар/', $cleanlable2)) {
               echo  $itemHtml['name'];
            }
            else {
                echo $newname;
            }



            ?>

                <?php if ($config->get('tmpl_sku_show', 1)) {
                    echo $itemHtml['sku'];
                } ?>
                <?php echo $itemHtml['params']; ?>
            </td>
            <td class="jbcart-price"><?php
                if ($config->get('tmpl_price4one', 1)) {
                    echo $itemHtml['price4one'];
                } ?>
            </td>
            <td class="jbcart-quantity"><?php
                if ($config->get('tmpl_quntity', 1)) {
                    echo $itemHtml['quantityEdit'];
                } ?>
            </td>
            <td class="jbcart-subtotal">
                <?php if ($config->get('tmpl_subtotal', 1)) {
                    echo $itemHtml['totalsum'];
                } ?>
            </td>
            <td class="jbcart-delete">
                <a class="btn btn-danger btn-xs btn-small round jsDelete">
                    <?php echo JText::_('JBZOO_CART_DELETE'); ?>
                </a>
            </td>
        </tr>
    <?php endforeach; ?>
Go to the full post


  • This topic is locked This topic is locked
17 replies to this topic

#11 CB9TOIIIA

CB9TOIIIA
  • Administrators
  • User rate: 230.6
  • posts: 3680
  • topics: 235

Posted 17 April 2016 - 17:41

Или как вариант можно даже в item name заделать
  • 2

#12 laRus

laRus
  • JBZoo User (rus)
  • User rate: 60
  • posts: 1334
  • topics: 31

Posted 17 April 2016 - 18:34

CB9TOIIIA, я так просила, так просила!!! и вот: картинка твоя на https://img-fotki.yandex.ru/get/108497/77677229.77/0_a417f_54a896d9_orig.png  :-| 

 

 

(Спасибо за интересное решение! 8) )


  • 0
..minimum effort for maximum effect? - Oh yeah! It's good!..

#13 CB9TOIIIA

CB9TOIIIA
  • Administrators
  • User rate: 230.6
  • posts: 3680
  • topics: 235

Posted 17 April 2016 - 18:57

С яндекса с моего акк не удалится) это ж яндекс
  • 1

#14 laRus

laRus
  • JBZoo User (rus)
  • User rate: 60
  • posts: 1334
  • topics: 31

Posted 17 April 2016 - 19:03

е удалится
Точно?  (wonder)  Тогда ок!  :)  
  • 0
..minimum effort for maximum effect? - Oh yeah! It's good!..

#15 CB9TOIIIA

CB9TOIIIA
  • Administrators
  • User rate: 230.6
  • posts: 3680
  • topics: 235

Posted 17 April 2016 - 19:51   Best Answer

0_a4180_11986795_orig.png





    <?php foreach ($view->itemsHtml as $itemKey => $itemHtml) : ?>
<?php

$items = $order->getItems(false);
$items2 = $items->$itemKey->params[buttons][addAlertText];
$cleanlable = str_replace('добавлен в корзину!', '', $items2);
$cleanlable2 = str_replace('добавлена в корзину!', '', $cleanlable);
//jbdump($cleanlable2,0,'Ищем лэйблы');

 ?>
        <tr class="jbcart-row jsCartTableRow js<?php echo $itemKey; ?>" data-key="<?php echo $itemKey; ?>">
            <td class="jbcart-image">
                <?php if ($config->get('tmpl_image_show', 1)) {
                    echo $itemHtml['image'];
                } ?>
            </td>
            <td class="jbcart-name">
            <?php
            $newname = str_replace('</a>', ' ( '.$cleanlable2.')</a>', $itemHtml['name']);
            echo $newname;


            ?>

                <?php if ($config->get('tmpl_sku_show', 1)) {
                    echo $itemHtml['sku'];
                } ?>
                <?php echo $itemHtml['params']; ?>
            </td>
            <td class="jbcart-price"><?php
                if ($config->get('tmpl_price4one', 1)) {
                    echo $itemHtml['price4one'];
                } ?>
            </td>
            <td class="jbcart-quantity"><?php
                if ($config->get('tmpl_quntity', 1)) {
                    echo $itemHtml['quantityEdit'];
                } ?>
            </td>
            <td class="jbcart-subtotal">
                <?php if ($config->get('tmpl_subtotal', 1)) {
                    echo $itemHtml['totalsum'];
                } ?>
            </td>
            <td class="jbcart-delete">
                <a class="btn btn-danger btn-xs btn-small round jsDelete">
                    <?php echo JText::_('JBZOO_CART_DELETE'); ?>
                </a>
            </td>
        </tr>
    <?php endforeach; ?>

или так:
0_a4181_2684ef41_orig.png
 
 
 

    <?php foreach ($view->itemsHtml as $itemKey => $itemHtml) : ?>
<?php

$items = $order->getItems(false);
$items2 = $items->$itemKey->params[buttons][addAlertText];
$cleanlable = str_replace('добавлен в корзину!', '', $items2);
$cleanlable2 = str_replace('добавлена в корзину!', '', $cleanlable);
$cleanlable2 = rtrim($cleanlable2);
//jbdump($cleanlable2,0,'Ищем лэйблы');

 ?>
        <tr class="jbcart-row jsCartTableRow js<?php echo $itemKey; ?>" data-key="<?php echo $itemKey; ?>">
            <td class="jbcart-image">
                <?php if ($config->get('tmpl_image_show', 1)) {
                    echo $itemHtml['image'];
                } ?>
            </td>
            <td class="jbcart-name">
            <?php
            $newname = str_replace('</a>', ' ('.$cleanlable2.')</a>', $itemHtml['name']);
            echo $newname;


            ?>

                <?php if ($config->get('tmpl_sku_show', 1)) {
                    echo $itemHtml['sku'];
                } ?>
                <?php echo $itemHtml['params']; ?>
            </td>
            <td class="jbcart-price"><?php
                if ($config->get('tmpl_price4one', 1)) {
                    echo $itemHtml['price4one'];
                } ?>
            </td>
            <td class="jbcart-quantity"><?php
                if ($config->get('tmpl_quntity', 1)) {
                    echo $itemHtml['quantityEdit'];
                } ?>
            </td>
            <td class="jbcart-subtotal">
                <?php if ($config->get('tmpl_subtotal', 1)) {
                    echo $itemHtml['totalsum'];
                } ?>
            </td>
            <td class="jbcart-delete">
                <a class="btn btn-danger btn-xs btn-small round jsDelete">
                    <?php echo JText::_('JBZOO_CART_DELETE'); ?>
                </a>
            </td>
        </tr>
    <?php endforeach; ?>

и наверное красивый последний вариант:

0_a4182_26577576_orig.png
 

    <?php foreach ($view->itemsHtml as $itemKey => $itemHtml) : ?>
<?php

$items = $order->getItems(false);
$items2 = $items->$itemKey->params[buttons][addAlertText];


$cleanlable = str_replace('добавлен в корзину!', '', $items2);
$cleanlable2 = str_replace('добавлена в корзину!', '', $cleanlable);
$cleanlable2 = rtrim($cleanlable2);
//jbdump($cleanlable2,0,'Ищем лэйблы');

 ?>
        <tr class="jbcart-row jsCartTableRow js<?php echo $itemKey; ?>" data-key="<?php echo $itemKey; ?>">
            <td class="jbcart-image">
                <?php if ($config->get('tmpl_image_show', 1)) {
                    echo $itemHtml['image'];
                } ?>
            </td>
            <td class="jbcart-name">
            <?php

            $newname = str_replace('</a>', ' ('.$cleanlable2.')</a>', $itemHtml['name']);

             if (preg_match('/Товар/', $cleanlable2)) {
               echo  $itemHtml['name'];
            }
            else {
                echo $newname;
            }



            ?>

                <?php if ($config->get('tmpl_sku_show', 1)) {
                    echo $itemHtml['sku'];
                } ?>
                <?php echo $itemHtml['params']; ?>
            </td>
            <td class="jbcart-price"><?php
                if ($config->get('tmpl_price4one', 1)) {
                    echo $itemHtml['price4one'];
                } ?>
            </td>
            <td class="jbcart-quantity"><?php
                if ($config->get('tmpl_quntity', 1)) {
                    echo $itemHtml['quantityEdit'];
                } ?>
            </td>
            <td class="jbcart-subtotal">
                <?php if ($config->get('tmpl_subtotal', 1)) {
                    echo $itemHtml['totalsum'];
                } ?>
            </td>
            <td class="jbcart-delete">
                <a class="btn btn-danger btn-xs btn-small round jsDelete">
                    <?php echo JText::_('JBZOO_CART_DELETE'); ?>
                </a>
            </td>
        </tr>
    <?php endforeach; ?>

Edited by CB9TOIIIA, 17 April 2016 - 19:57.

  • 0

#16 SmetDenis

SmetDenis
  • Administrators
  • User rate: 139.4
  • posts: 16232
  • topics: 200

Posted 18 April 2016 - 08:48

Кастомизацию в корзине я бы тоже по классу делал, по сути примерно как у Евгения.

 

Как я понял, остался вопрос только по письму.

 

У списка товаров в письме похожий на корзину шаблон. Находится тут

jbuniversal\jbuniversal\cart-elements\email\items\tmpl\table_body.php

 

Там с помощью массива $items можно разобрать чем является товар. В нем хранится все информация и свойства.

key у товара должен совпадать с $itemsHtml [ $itemKey ]

 

Ссылка на товар будет лежать тут  $itemHtml['name']

Она создается внутри класса заказа - jbuniversal\framework\classes\cart\jborder.php renderItems()

Определяем место вызова (админка или нет) - http://llfl.ru/ntlr0v

Если ссылка есть и материла существует в базе то делаем html ссылки по шаблону для имени и картинки - http://llfl.ru/16hush

Тут наверно придется сделать хак.


  • 3
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#17 CB9TOIIIA

CB9TOIIIA
  • Administrators
  • User rate: 230.6
  • posts: 3680
  • topics: 235

Posted 18 April 2016 - 11:18

По письму сделал примерно также:

\media\zoo\applications\jbuniversal\cart-elements\email\items\tmpl

table_body.php

<?php
/**
 * JBZoo App is universal Joomla CCK, application for YooTheme Zoo component
 * @package     jbzoo
 * @version     2.x Pro
 * @author      JBZoo App http://jbzoo.com
 * @copyright   Copyright (C) JBZoo.com,  All rights reserved.
 * @license     http://jbzoo.com/license-pro.php JBZoo Licence
 * @coder       Alexander Oganov <t_tapak@yahoo.com>
 */

// no direct access
defined('_JEXEC') or die('Restricted access');

$config    = $this->config;
$items     = $order->getItems();
$itemsHtml = $order->renderItems(array(
    'image_width'  => $this->config->get('tmpl_image_width', 75),
    'image_height' => $this->config->get('tmpl_image_height', 75),
    'image_link'   => $this->config->get('tmpl_image_link', 1),
    'item_link'    => $this->config->get('tmpl_item_link', 1),
    'currency'     => $this->_getCurrency(),
    'email'        => true,
));

$i = 0;
?>

<?php
foreach ($itemsHtml as $itemKey => $itemHtml) :
    $i++;

    $rowattr = 'style="border-bottom: 1px solid #dddddd;"';
    if ($i % 2 == 1) {
        $rowattr .= ' bgcolor="#fafafa"';
    }

    ?>
    <?php

$items = $order->getItems(false);

$items2 = $items->$itemKey->params[buttons][addAlertText];


$cleanlable = str_replace('добавлен в корзину!', '', $items2);
$cleanlable2 = str_replace('добавлена в корзину!', '', $cleanlable);
$cleanlable2 = rtrim($cleanlable2);
//jbdump($cleanlable2,0,'Ищем лэйблы');

 ?>

    <tr <?php echo $rowattr; ?>>

        <td><?php echo $i;?></td>

        <td>
            <?php if ($config->get('tmpl_image_show', 1)) {
                echo $itemHtml['image'];
                $imageEmail = $itemHtml['imageEmail'];

                if ($imageEmail['path']) { // attach as content-id image
                    $this->_addEmailImage($imageEmail['path'], $imageEmail['cid']);
                }

            } ?>
        </td>

        <td>
          <?php

            $newname = str_replace('</a>', ' ('.$cleanlable2.')</a>', $itemHtml['name']);

             if (preg_match('/Товар/', $cleanlable2)) {
               echo  $itemHtml['name'];
            }
            else {
                echo $newname;
            }


            ?>

            <?php echo $config->get('tmpl_sku_show', 1) ? $itemHtml['sku'] : null;?>
            <?php echo $itemHtml['params']; ?>
        </td>

        <td>
            <?php echo $config->get('tmpl_price4one', 1) ? $itemHtml['price4one'] : null;?>
        </td>

        <td>
            <?php echo $config->get('tmpl_quntity', 1) ? $itemHtml['quantity'] : null;?>
        </td>

        <td>
            <?php echo $config->get('tmpl_subtotal', 1) ? $itemHtml['totalsum'] : null;?>
        </td>

    </tr>
<?php endforeach; ?>

0_a41e4_653969a4_orig.png

  • 2

#18 isay777

isay777
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 113.4
  • posts: 1878
  • topics: 232

Posted 18 April 2016 - 11:48

СПАСИБО ЕВГЕНИЙ!!! СПАСИБО ДЕНИС!!!! 


  • 2
ХОСТИНГ для сайтов jbzoo (все попугаи)




Click to return to top of page in style!