NextJS Slicemachines link only allows "web" links

When using prismic normally, the "link" field allows 3 options - Web, Document, Media (unless you choose to refine it).

When using slicemachines it states that all 3 of these options are available

But when you actually publish your slice, you don't have the option to link to a document, or media item.

All you get are web links

1 Like

@dan I had the same issue 2 weeks ago - it's an easy solution, however I don't understand why this is the default

1 Like

Interesting. Given how it's required to specify which custom type relationships exist I can understand why this is the default but it's weird that you don't have the option to change it.

Based on @samlittlefair's comment on your post it sounds like it should be editable from within prismic slicemachine, but even on the beta branch (which I'm using currently) there's no option to allow document relations even with custom type options

I wonder what the 'correct' solution is here? Random document links won't work unless you define every document relationship in the initial query (very inefficient), so just deleting the web type here doesn't really work as a solution.

I guess a perfect solution would be for the linkable documents to be selected, which then automatically adds queries to your fetchLinks property but that's definitely not how this works now.

A simple solution is to use the Content Relationship field instead. It is designed only to link internal documents.

1 Like

Unfortunately, that doesn't solve the problem of using these link fields on buttons, or other similar link documents that can be either document links (prefetched) or external links (regular links).

This is a pretty common use case, especially in situations like header/footer navigations.

That is true. I understand that having both links in a Custom Type instead of covering all of the use cases isn't the most user-friendly option. But it's a workaround you can use to make internal links work.

We appreciate all of your feedback. I'll be sure to share it on the team's product board.

For the moment, we'll need to wait for the new changes to be applied in Slice Machine

@dan Just wanted to point out that my solution does work and I've been using it for my latest client project without any problems

1 Like

Hi Everyone,

Can you tell me what version of slice-machine-ui you are using?

Thanks.

OK, so I talked with the team and the field in this beta version of slice-machine-ui only supports 'links to web'. The content relationship supports 'links to documents' and neither supports 'links to media'.

I have requested the team to add support for all 3 of these cases to the link field. Hopefully this will be added in the next BETA release shortly.

I will update you here once this is done.

Thanks.

2 Likes

This thread has been closed due to inactivity. Flag to reopen.

Any ideas if this is still in the works? I'm still having to go into the models and manually update this to allow both types of links (web and document) which is definitely not ideal

Hi Dan,

With the latest stable version of Slice Machine UI this should work, you'll need to update you Slices and push them to Prismic to get this functionality.

Thanks.

I've been working on 0.1.0 for the last 2 weeks and I'm still not seeing this. This is the latest release as far as I can tell, but if I go up to 0.1.0-beta-9 I still don't see any option to choose what type of link I'm creating.

Even if I create a new link I still don't see this

Am I missing something?

Hi @dan ,

The latest version is stable 0.1.0, so it's out of beta.

Try deleting your node_modules and package-lock.json files, then in your package.json change slice-machine-ui to "slice-machine-ui": "^0.1.0".

Finally, run npm install again and you should have the latest version.

Thanks.

Hi @Phil,

I've deleted my node_modules folder and yarn.lock file but that hasn't changed the slice-machines-ui

It's at ^0.1.0 but what I'm seeing (after deleting everything, running yarn again and restarting the servers) is still the same as above.

Any ideas?

I'm going to test this on my side now to be sure.

Thanks.

I'm seeing this behaviour also, it should have been shipped with this version. I'm following up with the team to get more information.

So in the current version of slice-machine-ui the 3 types of links are 3 different fields:

  • link to web
  • link to media
  • content relationship

I'm discussing with the team that the default link field should support all 3 of these use cases. Hopefully we'll get this for the next release. I'll update you here once I have more info.

Great! It really doesn't make sense that it works this way as it's quite restricting (users regularly want to link both internally and externally) and the rich text links already work like this (where you can select any link type).

Thanks for looking into it.

1 Like