Obtener la ID de la categoría actual en Prestashop

Obtener la ID de la categoría actual en Prestashop

Obtener la ID de la categoría actual en Prestashop. En este articulo veremos de una manera concreta de como mostrar la ID de la categoría y/o información de categoría en Prestashop.

Índice
  1. Prestashop obtiene información de la categoría actual
  2. ¿Cómo puedo obtener la ID de categoría en category.tpl?
  3. Obtener la ID de categoría en Modulo PHP
  4. Usar condicional con ID categoría en TPL
    1. Conclusiones y recomendación de obtener la ID categoría

Prestashop obtiene información de la categoría actual

En Prestashop obtener la información de categoría actual es relativamente fácil, podemos usar este código en la página de categoría o el controlador y cualquier otra clase.

  PrestaShop obtener información actualizada del producto

En el siguiente ejemplo, se mostrará el nombre de la categoría y la descripción de la categoría, y otra información que deseamos mostrar. Veamos el ejemplo.

$categoryId = (int)Tools::getValue('id_category'); // get current category id
$categoryData = new Category ($categoryId,Context::getContext()->language->id); // get category object with id
$name = $categoryData->name; // get category name
$description = $categoryData->description; // get category description

¿Cómo puedo obtener la ID de categoría en category.tpl?

Para Obtener el ID de la categoría actual podemos usar la siguiente variable:

{$smarty.get.id_category}

También, podemos usar esta otra variable

{$id_category}

Obtener la ID de categoría en Modulo PHP

Si estas desarrollando un módulo personalizado en el que quiero asignar la categoría actual, donde se muestre en un determinado hook del módulo.

  Constantes y variables para Prestashop 1.7

Así es como puede obtener la categoría de ID predeterminada o la lista de categorías de ID de matriz del objeto de producto existente

public function hookDisplayRightColumnProduct($params)
{
// Define product object
$product = $params['product'];

// Get the default id category from defined product object
// Depend to id shop
$id_category_default = $product->getDefaultCategory();

// Get array of id categories from the defined object product
// NOT depend to id shop
$categories = $product->getCategories();

// Alternatively you can also Get array of id categories
// from the defined object product using its id_product
// NOT depend to id shop
$categories_alt = Product::getProductCategories($product->id);

}

Usar condicional con ID categoría en TPL

Para ahondar el tema podemos implementar una condicional comparativa y mostrar información en una personalizada categoría, ejemplo.

{if ($smarty.get.id_category = 4)}
{include file="./product-list.tpl" products=$products}
{/if}

Conclusiones y recomendación de obtener la ID categoría

En un articulo anterior hemos detallado las variables completas de Prestashop
El cms Prestashop es muy usado para gestionar una tienda en línea y conocer sus variables predeterminadas es muy sencilla.

  Agregar nueva opción en 'Acciones Agrupadas' de Prestashop

Recordemos que Prestashop trabaja con funciones PHP y ficheros TPL donde podemos trabajar con sus variables y sacarle el máximo provecho.

Datatables Dropdown PDO, ServerSide, Responsiva

ServerSide
Responsiva adaptable
Opciones de exportación Dropdown
Mensajes usando SweetAlert2
Acciones (Editar, Agregar, Ver, Eliminar)

Si quieres conocer otros artículos parecidos a Obtener la ID de la categoría actual en Prestashop puedes visitar la categoría Prestashop.

Nestor Tapia

Bloggero, amante de la programación PHP, innovador y me fascina compartir información. Desde que conocí el entorno informatico y el internet me llamó la atención la programación, Por tal motivo he creado mi blog BAULPHP.COM para compartir mis experiencias con todos ustedes. ¡Gracias por leerme!.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio web protege su privacidad al adherirse al Reglamento General de Protección de Datos de la Unión Europea (GDPR). No utilizaremos sus datos para ningún propósito que no haya dado su consentimiento. Obtenga más información en nuestra página política de privacidad