Solución ver categorías

Estado
Cerrado para nuevas respuestas

rolo

Nuevo usuario
Bueno esto está hecho para monos amaestrados como yo…no pregunten si se puede hacer esto o lo otro. No entiendo absolutamente nada de los códigos. Pero funciona de maravillas.

Bajar los dos archivos adjuntos y hacer lo siguiente.
Ir a magento app/code/Mage/Catalog/Model/Resource/Eav/Mysql4/Category.php y reemplazarlo por el adjunto Category.php (antes hacer backup del que ya se encuentra en tu web).
Tambien copiar el archivo adjunto sub_category_listing.phtml en app/design/frontend/ default/tutemplate/template/catalog/navigaton/sub_navigation.html

Despues ir a CMS > Static Blocks. Click en Add New Block y llenar así
Block Title: Sub Category Listing
Identifier: sub_category_listing
Status: Enabled
Content: {{block type="catalog/navigation" template="catalog/navigation/sub_category_listing.phtml"}}
Click Save

Ahora hay que habilitar el static blok en las categorías madres
Ir a: Catalog > Manage Categories
Ir a “General Information” y elegir una imagen para la categoría en examinar
Entonces clikear en la categoría madre que tiene subcategorias, ir a la zolapa “Display Settings”.
Llenar los campos de la siguiente manera:
Display Mode: Static Block Only
CMS Block: Sub Category Listing
Is Anchor: Yes

Y bualá!!!...sale como trompada!!!!...no lo puedo creer.

Queda solo hacer que se vean en forma horizontal…pero lo encontraré…por ahora nos conformamos con esto.

Saludos.
 

Adjuntos

Larry

Miembro
Es una solucion valida y que funciona bien. La unica pega es que la imagen que muestra en el listado de la categoria padre, es la misma que muestra luego en el encabezado de la categoria hija. Asi que hay que definir bien el tamaño de la imagen si no queda bastante pixelado.

A parte de esta pequeña pega... yo he implementado un pequeño codigo para que me muestre los articulos en columna de 2. En la imagen tienes mi ejemplo y aqui te añado el codigo:

Modificar sub_category_listing.phtml

PHP:
<?php 
      $category = $this->getCurrentCategory();
      $id = $category->getId();			
?> 
<?php $_categories=$this->getCurrentChildCategories(); ?>

<div class="list-type-grid category-listing">
    <?php $i=0; foreach ($_categories as $_category): ?>
   				<?php if($i==0): ?>		
   						<ol class="grid-row">		
        	<?php endif; ?>	
        	<li class="item">  				
            <?php if($_category->getIsActive()): ?>
                <div class="product-image">
                   <a href="<?php echo $_category->getURL() ?>" title="<?php echo $this->htmlEscape($_category->getName()) ?>">
												<img src="<?php echo $_category->getImageUrl() ?>" width="227" height="100" alt="<?php echo $this->htmlEscape($_category->getName()) ?>" />
                   </a>
								</div>
                <h2><a href="<?php echo $_category->getURL() ?>" title="<?php echo $this->htmlEscape($_category->getName()) ?>"><?php echo $this->htmlEscape($_category->getName()) ?></a></h2>           
								<?php echo $_category->getDescription() ?>
              <?php endif; ?>               
      		</li>
      	<?php ($i = $i+1); ?>		
        <?php if($i==2):?>
        		</ol>
        		<?php ($i = 0); ?>	
        <?php endif; ?>
    <?php endforeach ?>
    <script type="text/javascript">decorateGeneric($$('.grid-row'), ['last', 'odd', 'even']);</script> 
</div>
Añadir los estilos a boxes.css

PHP:
.list-type-grid { }
.category-listing { line-height:1.35em; }
.list-type-grid .grid-row { }
.list-type-grid li.item { 
float:left;
line-height:1.6em;
overflow:hidden;
padding:10px 5px;
width:227px;
}
Espero que te sriva como guia para poder hacer lo que deseas.

Saludos.
 

Adjuntos

Última edición:

rolo

Nuevo usuario
Larry, muchas, pero muchas gracias. En verdad estuve con esto casi un mes, y nadie me había contestado acerca de este problema. No te voy a decir que se me cayeron las lágrimas al ver tu respuesta...pero casi.
Te lo agradezco infinitamente.

(espero que agreguen este post como tutorial..cheeee!!!)

Un abrazo.
 

rolo

Nuevo usuario
Bueno ahí salió perfecto...pero una pregunta Larry...si quiero mas columnas que "númerito mágico" tendría que tocar dentro del código?. Porque modifiqué el unico "2" que hay y le puse "3" y nada che sigue igual.
Graciassss!!!!.
 
Última edición:

Larry

Miembro
Uno de los parametros que hay que cambiar es el 2 por un 3, eso esta bien. Pero ahora tienes que mirar que las imagenes te quepan en el espacio que lo quieres poner.

Si te fijas en estas lineas:

PHP:
<a href="<?php echo $_category->getURL() ?>" title="<?php echo $this->htmlEscape($_category->getName()) ?>">
<img src="<?php echo $_category->getImageUrl() ?>" width="227" height="100" alt="<?php echo $this->htmlEscape($_category->getName()) ?>" />
</a>
se le esta pasando el formato de la imagen, cuya anchura es de 227pixels y altura 100px. Por lo tanto cada imagen que muestra es de ese tamaño. Ahora tienes que calcular pues tu, que tamaño tiene que tener cada imagen tuya, para que quepan 3 en el espacio que tienes, porque si alguna imagen no cabe lo que hace es bajarla. Espero haberme explicado. Aparte tambien modifica el con la misma anchura que tus imagenes el Width del estilo css:

PHP:
.list-type-grid li.item { 
float:left;
line-height:1.6em;
overflow:hidden;
padding:10px 5px;
width:227px;
}
pues le esta dando la anchura a cada una de las columnas de cada fila.

Saludos.
 

rolo

Nuevo usuario
Cambio de foto de portada.

Tengo un problema....modifique el boxes.css para que la foto de la categoria principal fuera de 705x100 pix, despues las fotitos de las categorias siguientes son de 100x100...resulta que hago click en la fotito de 100x100 y al entrar en la categoria, me aparece la foto (que es de 100x100) pero gigantísima...se puede arreglar esto?

Graciasssssss.
 
Estado
Cerrado para nuevas respuestas
Arriba