Estoy usando una plantilla que llama a una función en bloque, y dentro de ese bloque estoy tratando de extraer una categoría actual con Mage::registry('current_category')
. Sin embargo, siempre devuelve NULL. Intenté hacer esto desde la página del producto, página de búsqueda, todavía nada. ¿Hay alguna razón por la cual devolvería NULL? ¿Cuáles son algunas cosas que podría verificar?¿Por qué razón Mage :: registry ('current_category') devolverá NULL?
Respuesta
Es nula, ya que no se establece. El registro actúa como un sistema para variables globales que no se basan en el soporte global integrado de PHP. No se garantiza que cualquier variable particular que se haya registrado estará disponible en cada página. Por ejemplo, dijiste que probaste esto en la página de búsqueda. ¿Cuál debería ser el current_category
en la página de búsqueda?
Es nulo porque se supone que es.
También la categoría solo se establecerá para las páginas del producto si la URL contiene el nombre de la categoría correspondiente – clockworkgeek
Supongo que esto tiene sentido :) Gracias –
@clockworkgeek Pero en mi caso en la página de poductos para algunos pr oducts (todos sin nombre de categoría en url) 'Mage :: registry ('current_category')' devuelve nulo pero en otros casos devuelve el objeto de categoría. ¿Porqué es eso? – KoviNET
Prueba esto:
$category = $this->helper('catalog/category')->getCategoryUrl(Mage::registry('current_category'));
:('Fatal error: Llamada a una función miembro getData() en un no-objeto en ... \ Magento \ app \ code \ core \ Mage \ Catalog \ Helper \ Category.php en línea ' –
... y su archivo de plantilla es? –
Si el valor devuelto de Mage :: registry ('current_category') es nulo, entonces obteniendo el la categoría URL no va a funcionar. –
- 1. ¿Por qué Assembly.GetExecutingAssembly() devolverá nulo?
- 2. ¿El nuevo operador devolverá NULL?
- 3. ¿Puedo confiar en que malloc devolverá NULL?
- 4. Por qué Images.Media.insertImage return null
- 5. ¿Por qué null cast?
- 6. Registry Watcher C#
- 7. ¿Isset() devolverá falso si asigno NULL a una variable?
- 8. Magento: cuándo usar Mage :: getResourceModel
- 9. ¿Por qué funciona String (null)?
- 10. getElementById y null - ¿por qué?
- 11. AIR: ¿Por qué stage == null?
- 12. ¿Por qué se desaprueba TabActivity (razón)?
- 13. ¿Qué es Mage y de qué manera es útil?
- 14. Javascript: ¿Por qué comparar con null?
- 15. ¿Por qué null == myVar en lugar de myVar == null?
- 16. ¿Por qué column = NULL no devuelve filas?
- 17. Por qué malloc siempre devuelve NULL
- 18. ¿Por qué 'fopen' devuelve un puntero NULL?
- 19. ¿Por qué ocasionalmente Throwable.getMessage() devuelve null?
- 20. ¿Por qué la tira ostringstream NULL?
- 21. null.Equals (null) ¿Por qué aparece una NullReferenceException
- 22. ¿Por qué no se declara NULL?
- 23. qué parseJSON devuelve null
- 24. ¿Por qué `null> = 0 && null <= 0` pero no` null == 0`?
- 25. ¿Hay alguna razón para especificar DEFAULT (NULL) en una columna que admite valores NULL?
- 26. ¿Por qué no .getPropertyValue() devolverá un valor para la propiedad "borderRadius"?
- 27. ¿Por qué razón tenemos la convención de nomenclatura de lower_case_with_underscores?
- 28. ¿Por qué System.Type.GetType ("Xyz") devuelve null si typeof (Xyz) existe?
- 29. ¿En qué caso, esta función no devolverá un valor? ¿Por qué el compilador informa un error?
- 30. ¿Cuándo SqlCommand.ExecuteReader() devolverá nulo?
se podía chekc con depurador, donde se establece y donde se pone desarmar –