Nicolas Zawada
Nicolas Zawada

Reputation: 507

Kentico Media Library Relative URL

We have a Kentico project where we're using Azure Blob Storage for our media storage. When selecting a media file in a page, it stores the URL like this: www.ourhost.net/blobcontainer/kenticosite/media/medialibrary/picture.jpg

We are also using ImageProcessor.org. This only works when the image is requested through the host itself, so we need the media library selector to store the absolute URL like this: /blobcontainer/kenticosite/media/medialibrary/picture.jpg

How can this be done?

Thanks in advance. Nicolas.

Upvotes: 0

Views: 816

Answers (1)

Enn
Enn

Reputation: 2209

I assume you are talking about Media selection form control, is that correct?

In this case the solution is for you to remove the protocol/domain from the absolute URL which is stored by the form control. You can do this by creating Custom macro since you are using Portal engine macros.

The purpose of the macro will simply be to take the absolute URL and make it a relative URL.

Instead of using this:

<img src="{% CurrentDocument["HeaderImage"] #%}" alt="{% CurrentDocument["Title"] #%}" />

You would call it like:

<img src="{% MyMacros.GetRelativeUrl(CurrentDocument["HeaderImage"]) #%}" alt="{% CurrentDocument["Title"] #%}" />

As you can see I'm using "MyMacros" namespace which is a best practise as it will enable you to keep all your macros organized. You can create custom namespaces as per this article

Upvotes: 2

Related Questions