Jump to content
Sign in to follow this  
serkirval

Нужна помощь по настройке product/category

Recommended Posts

Выводится блок product/category. Надо убрать картинку и добавить текст "модель"  его название

 

<div class="product-list">
    <?php foreach ($products as $product) { ?>
    <div>
      <?php if ($product['thumb']) { ?>
      <div class="image"><a href="<?php echo $product['href']; ?>"><img src="<?php echo $product['thumb']; ?>" title="<?php echo $product['name']; ?>" alt="<?php echo $product['name']; ?>" /></a></div>
      <?php } ?>
      <div class="name"><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></div>
      <div class="description"><?php echo $product['description']; ?></div>
      <?php if ($product['price']) { ?>
      <div class="price">
        <?php if (!$product['special']) { ?>
        <?php echo $product['price']; ?>
        <?php } else { ?>
        <span class="price-old"><?php echo $product['price']; ?></span> <span class="price-new"><?php echo $product['special']; ?></span>
        <?php } ?>
        <?php if ($product['tax']) { ?>
        <br />
        <span class="price-tax"><?php echo $text_tax; ?> <?php echo $product['tax']; ?></span>
        <?php } ?>
      </div>

Выделеное красным выкидываю

 

и добовляю

 

 

 

<div class="product-list">
    <?php foreach ($products as $product) { ?>
    <div>
      
    
     <div class="model"><a href=<?php echo $product['text_model'] ; ?><?php echo $product['model'] ; ?></a></div>
             
      <div class="name"><a href=<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></div>
      <div class="description"><?php echo $product['description']; ?></div>
      <?php if ($product['price']) { ?>
      <div class="price">
        <?php if (!$product['special']) { ?>
        <?php echo $product['price']; ?>
        <?php } else { ?>
        <span class="price-old"><?php echo $product['price']; ?></span> <span class="price-new"><?php echo $product['special']; ?></span>
        <?php } ?>
        <?php if ($product['tax']) { ?>
        <br />
        <span class="price-tax"><?php echo $text_tax; ?> <?php echo $product['tax']; ?></span>
        <?php } ?>
      </div>

 

и что то не выходит каменный цветок

Помогите новичку Что не Так делаю?

Share this post


Link to post
Share on other sites

а куда он должен выходить? (каменный цветок)

Share this post


Link to post
Share on other sites

а в контроллер:  catalog\controller\product\category.php

 

после:

$this->data['products'][] = array(

 

вот так добавили?:

'model'      => $result['model'],

 

и вот это у себя исправьте, в зависимости от того, какая у вас задумка:

<a href=<?php echo $product['text_model'] ; ?>

на так:

<?php echo $text_model; ?>

или на так:

<a href="<?php echo $product['href']; ?>">

 

и еще пропущены кавычки в:

<div class="name"><a href=ТУТ<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></div>

 

после этого смотрите вниз файла, там скрипт, формирующий вид сетка или список и добавляете в него вашу модель аналогично другим классам

Share this post


Link to post
Share on other sites

Это добавил

а в контроллер:  catalog\controller\product\category.php

 

после:

$this->data['products'][] = array(

 добавили

'model'      => $result['model'],

 

в catalog/view/theme/default/template/product

поменял на это   <a href="<?php echo $product['href']; ?>">

 

  и низ скрипта

If (view == 'list') {
        $('.product-grid').attr('class', 'product-list');
        
        $('.product-list > div').each(function(index, element) {

                         html  = '<div class="right">';

            html += '  <div class="cart">' + $(element).find('.cart').html() + '</div>';
            html += '  <div class="wishlist">' + $(element).find('.wishlist').html() + '</div>';
            html += '  <div class="compare">' + $(element).find('.compare').html() + '</div>';
            html += '</div>';            
            
            html += '<div class="left">';
            
            var image = $(element).find('.image').html();
            
            if (image != null) {
                html += '<div class="image">' + image + '</div>';
            }

            
            var price = $(element).find('.price').html();
            
            if (price != null) {
                html += '<div class="price">' + price  + '</div>';
            }
                    
            html += '  <div class="name">' + $(element).find('.name').html() + '</div>';
            html += '  <div class="description">' + $(element).find('.description').html() + '</div>';
            
            var rating = $(element).find('.rating').html();
            
            if (rating != null) {
                html += '<div class="rating">' + rating + '</div>';
            }
                
            html += '</div>';
                        
            $(element).html(html);
        });      

Я так понимаю надо это поменять???

Share this post


Link to post
Share on other sites

Сделал так

 

'.product-grid').attr('class', 'product-list');
        
        $('.product-list > div').each(function(index, element) {
                        
            html  = '<div class="right">';
                        html += '  <div class="cart">' + $(element).find('.cart').html() + '</div>';
            html += '  <div class="wishlist">' + $(element).find('.wishlist').html() + '</div>';
            html += '  <div class="compare">' + $(element).find('.compare').html() + '</div>';
            html += '</div>';            
            
            html += '<div class="left">';
            
            var image = $(element).find('.image').html();
            
            if (image != null) {                                                             ЭТО МОЖНО ВЫКИНУТЬ  ????
                html += '<div class="image">' + image + '</div>'
;
            }
            
            var price = $(element).find('.price').html();
            
            if (price != null) {
                html += '<div class="price">' + price  + '</div>';
            }
            html += '  <div class="model">' + $(element).find('.model').html() + '</div>';  --------------- Это добавил

     
            html += '  <div class="name">' + $(element).find('.name').html() + '</div>';
            html += '  <div class="description">' + $(element).find('.description').html() + '</div>';
            
            var rating = $(element).find('.rating').html();
            
            if (rating != null) {
                html += '<div class="rating">' + rating + '</div>';
            }
                
            html += '</div>';

 

 

Правильно??????

Share this post


Link to post
Share on other sites

Вот это выкидывать, да:

 

var image = $(element).find('.image').html();
            
 if (image != null) {
    html += '<div class="image">' + image + '</div>';
   }    -------    не забываем эту скобку тоже выкинуть.

 

по вставке вроде все верно

Share this post


Link to post
Share on other sites

у меня не работает на Версия 1.5.5.1.2,какая версия у вас ?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.