Text lists difficult to use

The content editors on our team are upset about the UI for text lists. Any suggestions?

The two major problems reported:

  • text lists only work on “short” texts with a limit of 256 characters, not per entry, but for the whole list, which seems like a ridiculously low value.

  • unlike the reference list editor, which supports the rearrangement of entries, the text list editor comes in two flavors that are both difficult to use: the first variant seems to force the editors to put all list entries into a single line and use commas as separators, which forces editors to search and scroll a lot and replace all commas in list entries; the second variant is a tag list that support no sorting, so that the whole list must be re-created everytime something needs to be inserted.

Sure, I could imagine several workarounds, like using long texts with a custom separator and splitting programmatically; or using a JSON structure. But, seriously, a headless CMS with a backend that forces editors to write JSON doesn’t sound very 2017, and if reference lists already support reordering, why not support it in text lists, too?

1 Like

PS: I have a feeling that the entire approach of lists in Contentful is currently incomplete/broke. IMO “every” content type should support either singleton or list entry. Then, the Contentful developers would only need to create UI controls for editing the single item, plus a one-size-fits-all implementation for lists that wraps a number of singleton editors and enhances/decorates those with handles for drag-and-drop reordering.

1 Like

Having the same dilemma with text lists. There doesn’t seem to be any great way to handle text lists for longer chunks of text (ie. each text list item is a sentence or two).
Has anyone come up with a better way then the tag list option?

Hey @jnorris and @dkast,

@dkast has mentioned the following:

However, this is actually not true for our Web Interface.

As a matter of fact, in our short-text lists, there is a 256 character limit for each of your tags, with a total amount of 1000 tags per field.

That should be enough for most use cases and, in case it you have over 1000 tags, you could simply create an additional short-text list field.

Let me know if that makes or if you need any other questions :slight_smile:

The Tag list option works well for longer text list items with three exceptions:

  1. You can’t edit an item once you add it
  2. You can’t rearrange the items once created
  3. The values are truncated in the UI, with no real way to see the full value of a longer item

If you need to edit or rearrange items your only option appears to be to delete the options and rebuild them all.
Gabriel, am I missing something?

@jnorris there are actually two possibilities for adding tags in your field:

  1. Configure your short-text list field to have the appearance of “Tags”.
    This is the behavior that you’ve described, and, indeed, you cannot edit an item, or rearrange them once created.

  2. Configure your short-text list field to not have the appearance of “Tags”.
    In this case, you should add your tags by adding commas, and you can rearrange and edit them at any time.

Here’s the difference in a sample entry:

This is where you can actually configure this property:

That being the case, insofar as you’re currently using approach #1, you may want to choose approach #2, and manage your tags with more flexibility.

Still, I completely understand how the issue you described may be frustrating, so I’m also opening a feature request for this.

Hope this helps :slight_smile:

Thanks for the quick reply. We may need to wait for the feature request to hopefully be implemented. There is a big possibility that our list items would include commas in their values, which makes using the comma separated values most likely less flexible for us.

Thank you for at least confirming that we weren’t missing something that was already built in for this, and for submitting the feature request to make it much more flexible and manageable in the future hopefully.

Hello!

I just wanted to add that this is also a feature I’m interested in. My team is currently migrating to Contenful from WP and we used a lot of sortable lists that consisted of sentences or paragraphs. We’ve looked into the list options in Contentful - tags, no tags, references - and none of them seem to be the best fit for our use case.

@gabriel, is it possible to get a status update on the feature request?

Hi @nicole,

We unfortunately do not yet have an update on this request, but I’ll keep this thread updated in case that changes :blush:

Sounds great, thanks @gabriel!

This issue has been bothering me for quite some time. I reached out to support but had only a vague response and suggestions to instead make a new content type for entries and link to each of those. That’s much too heavyweight in a lot of circumstances in my opinion.

I was eventually put in contact with one of the developers as part of a totally different thread (an unrelated bug report), and once we had resolved that issue I hijacked the thread since I had a developer on the other end who could give some real answers. That developer agreed with me that the current UI is lacking, but there’s no saying when or if it’ll be improved. However, at the same time the developer pointed out the Contentful extensions feature which I had no idea existed!

I’ve used that to build an extension to handle exactly this use case. Hopefully anyone finding this thread will find it useful.

So far it’s tested in Firefox and Chrome. If you find any bugs please open tickets on Github. If you need help building it let me know and I’ll add more details to the readme. If you need help installing please check the Contentful documentation on extensions first, and if you are still stuck you can ask me.

Let me know also if there are feature requests, here or on Github.

Here’s the screenshot I added the readme on Github:

It and its dependencies (at least the sortable component and React itself, I didn’t dig deeper than that) are MIT licensed so, Contentful staff, feel free to take it and it and add it as is or in modified form to Contentful itself. This should not need an extension!

2 Likes

@bart your extension is perfect, thanks for putting the time into it. My only complaint is that it’s a little slow to load, but it does exactly what I want, so I can deal. Thanks!

I’ve never noticed it being slow. Do you have a particularly long list of text strings?

I went this morning to go make a screen recording, and it was fast. Maybe it was just a janky internet connection on my part. It’s a lovely plugin, thanks.