Pregunta

Tengo 4 categorías principales en un sitio de OpenCart.

Quiero tener una imagen de encabezado diferente para las 4 categorías separadas. ¿Cómo puedo obtener el nombre de la categoría actual y poner una instrucción IF para seleccionar la imagen para el encabezado?

Código de imagen del encabezado actual:

<div id="headerWrapper">
<div id="header">
    <div class="div1">
        <div class="div2">
        <?php if ($logo) { ?>
        <a href="<?php echo str_replace('&', '&amp;', $home); ?>"><img src="<?php echo $logo; ?>" title="<?php echo $store; ?>" alt="<?php echo $store; ?>" /></a>
        <?php } ?>
        </div>        
    </div>
</div>

¿Fue útil?

Solución

Deberá hacer ejercicio si la ruta está configurada y la ruta es producto/categoría para comenzar, para verificar si incluso está en una página de categoría. Entonces deberá usar esa información en un interruptor realmente (en lugar de una lista grande si más). ¿Puede dar más detalles sobre lo que desea cambiar en el código anterior? ¿Es el logotipo o desea agregar una clase al encabezado que luego puede usar para peinar a través de su hoja de estilo?

Para averiguar si está en la categoría, use esto en el index() método en catalog/controller/common/header.php

$get = $this->request->get;
$this->data['cat_id'] = false;
$this->data['cat_name'] = '';
if(!empty($get['route']) && $get['route'] == 'product/category' && !empty($get['path'])) {

    $cats = explode('_', $get['path']);
    $cat_id = array_pop($cats);
    $cat_id = (int) $cat_id;

    if($cat_id) {
        $this->load->model('catalog/category');
        $result = $this->model_catalog_category->getCategory($cat_id);
        $this->data['cat_id'] = $cat_id;
        $this->data['cat_name'] = $result['name'];
    }
}

Esto le dará dos variables para usar en el archivo Common/Header.TPL de su plantilla.

$cat_id y $cat_name

$cat_id será la ID de categoría actual o falsa si no es una página de categoría

$cat_name tendrá el nombre de categoría actual si existe, o una cadena vacía si no es así

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top