Medien link anhand von UUID generieren

Hallo,

Ich habe die UUID von einer in den Medien hochgeladenen PDF benötige allerdings den Link zu eben dieser Datei, kann ich aus dieser UUID den Link generieren? Wenn ja wie?

Die UUID bezeihe ich indem ich innerhlab der twig file {{ page.product.customFields.datasheet }} aufrufe, welches ein Bei einem Artikel hinterlegt zusatzfeld des Typs medien Feldes ist.

Vielen Dank schonmal

Hallo,

ist zwar schon lange her, aber das würde ich auch gerne wissen.
Hat vielleicht jemand einen Link zur Hand? Oder ein CodeBeispiel?

Das wäre klasse. Vielen Dank

Also:
Ich habe es nun anhand dieser Anleitung versucht:
https://developer.shopware.com/docs/guides/plugins/plugins/plugin-fundamentals/custom-fields-of-type-media
Aber leider funktioniert das so nicht.
Entweder, weil ich nicht in derselben twig Datei, wie in der Anleitung, oder weil der Funktionsaufruf anders lauten muss?
Ich passe die Datei tabs.html.twig an. Dort liefert mir

{{ page.product.translated.customFields.custom_sizetable_image }}

die UUID des Bildes. Allerdings liefert

{% set customMediaId = page.product.translated.customFields.custom_sizetable_image %}
{% set customMedia = mediaCollection.get(customMediaId) %}
{{ dump(customMedia) }}

null zurück

okay. Ich Blödmann habe vergessen die mediaCollection zu erzeugen.
Das wird in der Anleitung mittels:

{% set mediaCollection = searchMedia([mycustomMediaId], context.context) %}

getan.
Allerdings führt das zu einer Fehlermeldung:

Object of class Shopware\Core\Content\Media\MediaEntity could not be converted to string

Hmmm … und nun?
Wie rufe ich den die Funktion searchMedia korrekterweise auf?

So.
Doch noch geschafft :slight_smile:

Folgender Code funktioniert bei mir:

{% block page_product_detail_tabs_content_custom_media %}
<div class="tab-pane fade show {% if (ratingSuccess != 1) and (ratingSuccess != -1) %}active{% endif %}"
         id="custom-tabelle-tab-pane"
        role="tabpanel"
        aria-labelledby="custom-tabelle-tab">
                           
{% set mycustomMediaId = page.product.translated.customFields.custom_sizetable_image %}
{% set mediaCollection = searchMedia([mycustomMediaId], context.context) %}
{% set mycustomMedia = mediaCollection.get(mycustomMediaId) %}  
<img class="sizetable" src="{{ (mycustomMedia.url) }}" alt="" />
</div>
% endblock %}

Vielleicht hilft das ja jemandem.

1 „Gefällt mir“