Magento - Obtener producto actual

Tengo un bloque de barra lateral en mi diseño que se muestra en diferentes páginas.

En este bloque, tengo una lista de productos y quiero seleccionar el producto actual cuando estoy en una página de producto.

Estoy usando :

$current_product = Mage::registry('current_product');

para obtener el producto actual, pero esto funciona solo la primera vez que estoy cargando la página del producto. Cuando selecciono un producto diferente, el código anterior devuelve el mismo valor (el primer producto).

Supongo que esto sucede porque estoy usando el caché de Magento. ¿Qué puedo hacer para obtener el valor correcto?

Lo mismo sucede cuando uso:

$currentCategory = Mage::registry('current_category');

El bloque de la barra lateral es una plantilla de navegación que he agregado aquí: .. \ app \ design \ frontend \ default \ mytheme \ template \ catalog \ navigation \ page_left.phtml.

Lo estoy agregando al diseño con este XML:

<block type="catalog/navigation" name="left.navigation.block" as="left.navigation.block" template="catalog/navigation/page_left.phtml"/>

Respuestas a la pregunta(4)

Su respuesta a la pregunta