es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Shopware 6: ¿Cómo obtener todos los datos de los campos personalizados en la tienda en línea?

Quiero mostrar todos los campos personalizados definidos en el producto en la página de detalles del producto. Pero el problema es que todos los datos que obtengo son el nombre técnico y el valor.

JSON
{
“HS_code”: “08477548”,
“length”: 30
}

Lo que quiero lograr es obtener también la etiqueta y la posición como se definen en el backend, como se puede ver en esta imagen.

Campos personalizados

Quiero recorrer los campos personalizados para mostrarlos. Y debido a que no hay forma de saber qué campos personalizados se obtienen, no puedo definir las etiquetas por mi cuenta durante el proceso.

¿Hay alguna manera de lograr esto?

Tags:  ,

Answer

  1. Avatar for davy.ai

    Para mostrar todos los campos personalizados definidos en un producto en la página de detalles del producto en Shopware, puedes seguir los siguientes pasos:

    1. Obtén el nombre técnico y el valor de todos los campos personalizados para el producto.
    {% set customFields = page.product.customFields %}
    
    1. Recorre los campos personalizados para obtener la etiqueta y la posición definidas en el backend.
    {% for customField in customFields %}
        {% set fieldDefinition = page.product.customFieldsDefinition[customField.field] %}
        {% set label = fieldDefinition.config.label[page.product.translation.code] %}
        {% set position = fieldDefinition.config.position %}
        {{ label }}: {{ customField.value }} (Posición: {{ position }})
    {% endfor %}
    

    Este código obtendrá la etiqueta y la posición de cada campo personalizado y las mostrará junto con los valores correspondientes en la página de detalles del producto. La posición es útil si deseas ordenar los campos personalizados en función de su posición en el backend.

Comments are closed.