WordPress / gutenberg

The Block Editor project for WordPress and beyond. Plugin is available from the official repository.
https://wordpress.org/gutenberg/
Other
10.49k stars 4.19k forks source link

LinkControl Refresh #50891

Closed richtabor closed 8 months ago

richtabor commented 1 year ago

This issue combines design explorations into one implementation plan and supersedes https://github.com/WordPress/gutenberg/issues/49091 for tracking LinkControl. There are three key area of this proposal: inline, navigation, and image links.

I've drawn out the flows for each key area below, consolidating feedback into actionable issues to improve link application across the editor experience. And the tasks listed are prioritized in general implementation order.

Tasks

Follow-up

Inline links

CleanShot 2023-05-30 at 13 09 50

Key concepts:

Navigation links

CleanShot 2023-05-30 at 13 56 24

Key concepts:

Media links

CleanShot 2023-05-30 at 13 11 23

Key concepts:

props to @getdave @jasmussen @jameskoster @SaxonF.

fabiankaegy commented 1 year ago

Thank you for working on this proposal. At first glance, I really like the refined UI here.

Something I'm a little worried about though, is the removal of the URL in the suggested items when searching for any piece of content. A lot of sites I'm working on have a ton of content with sometimes very similar names. Since the URL needs to be unique, it helps editors on those large sites to be able to better differentiate between the very similarly named posts. Looking at these explorations here, I feel like that nuance is getting lost here, and whilst the designs look great with that very ideal content I worry that more complex sites will struggle a lot without these additional contextual clues.

getdave commented 1 year ago

@richtabor Thank you for these designs. These address many of the concerns I've raised previously about the designs that have been proposed in the past and also unifies a lot of the flows. That's great.

I think we should now look at what is feasible within the scope of 6.3 and look to address those issues that are the most impactful. I anticipate this effort may run into 6.4, but that does of course depend on how many contributors engage with this effort.

the removal of the URL in the suggested items when searching for any piece of content

I agree with Fabian here. I've received feedback before that adding additional context helps to find the correct entity. I appreciate their is a design/visual trade off here, but it may be considered a UX regression if we don't include it. How much do you feel this impacts on the usability of the control? For example, does the additional "noise" of the URL make it harder to scan the results?

richtabor commented 1 year ago

Since the URL needs to be unique, it helps editors on those large sites to be able to better differentiate between the very similarly named posts.

Do you mean in a scenario where two pages are titled “About”, you wouldn’t know which is which?

richtabor commented 1 year ago

I think we should now look at what is feasible within the scope of 6.3 and look to address those issues that are the most impactful.

I put the task list in implementation order (theres a bit of leeway of course). Of those, what do you think we won’t get to?

From my POV, perhaps the “Add block” state may take the most effort.

I’m cool with keeping the media linking out of the initial effort (but having a clear technical path for that context).

fabiankaegy commented 1 year ago

Since the URL needs to be unique, it helps editors on those large sites to be able to better differentiate between the very similarly named posts.

Do you mean in a scenario where two pages are titled “About”, you wouldn’t know which is which?

The example of two about pages is not the one I would have gone for even though thinking about it as soon as you add multilingual installations into the mix that may very well exist. Where you have two pages called About. One with the url /en/about and one with au/about because of localized / legal differences 🤷

What I've seen sadly too often is duplicate copies of a page for making revisions and then being able to use the URL makes it easier especially when you are still in the early days of a website before it goes live to choose the correct version.

What I think would also be great to see is how very long page titles get handled. If there is any truncation happeing in the title itself having the url there helps because the way it is truncated usually is different to the title. (Title usually cutts of everything from the end and url truncated in the middle to show the end. Which can often be the most important part.)

Like imagine having these posts:

If the URL doesn't appear we should at least ensure there is never any truncation happening on the titles :) So showing some longer titles in the mockup is probably a good idea just to showcase that from the beginning :)

Because of the similar names across multisite or staging sites with duplicate content I personally think it helps a ton.


Thinking about it more I actually have another relevant story from just yesterday where the URL saved me. I was working on a site and wanted to link to a page I had just created. Because I still had an older page with the same title in the trash the url automatically appended -2 at the end of the URL. And I only caught that mistake when I tried to add that page to the navigation block because you usually don't often see the URL of things when just publishing content.

Yeah, I would have probably caught it not too late after when visiting the page on the frontend. But even that isn't always a given because many browsers don't show the full URL anymore.

jasmussen commented 1 year ago

The example of two about pages is not the one I would have gone for even though thinking about it as soon as you add multilingual installations into the mix that may very well exist. Where you have two pages called About. One with the url /en/about and one with au/about because of localized / legal differences 🤷

Are you refererring to this screen?

Screenshot 2023-05-25 at 09 44 24

I.e. that you are only allowed to make a custom link if you actually add a tld at the end?

Screenshot 2023-05-25 at 09 44 54

I don't think it would be the end of the world if we had to add back the "Add URL", but I support Rich's design, because it's currently way too easy to make a completely broken link, like just typing asdf and pressing Enter and getting something useless as a result. In that light, it might be good to do some very light validating such if the phrase includes a /, http, www, a # or even a ., then we show the URL suggestion. That would at least catch common "bad link" cases.

Speaking specifically to the multilingual case, I would worry about optimizing too much for that. Implementations vary a lot, in some you'd just see the language as a parent page and the dialog would work fine. Moreover, I like to think that as we go into the multilingual phase 4, issues like these can be absorbed and handled more smartly, perhaps through a locale picker in the UI. That's not to negate the use case, just that it's probably good to not optimize too heavily for it at this point.

fabiankaegy commented 1 year ago

@jasmussen my concern is not about having the add url button. It is that the various suggestions of content from the current site doesn't show the URL of that post anymore

getdave commented 1 year ago

This is a good discussion. Update: we should probably move it to https://github.com/WordPress/gutenberg/issues/50885 as that's more specific.

I have to say I support @fabiankaegy's point about distinguishing between links. Why? Because it was previously a real user problem in the Link UI. It's an identified user need and a common pain point.

If, by revising the UX of this control, we remove the ability to distinguish between links that users have previously specifically requested, then we are regressing the interface. That would be unfortunate.

I appreciate the push for a clean interface and Joen's point about the UI adapting in the future to accommodate i18n, but our users need a way to distinguish between similarly named posts today.

I think we need to at least consider adding in the URLs or provide some other means for users to distinguish between posts appearing in the search results without having to select one 🙏

jeffpaul commented 1 year ago

I concur with others here on the inclusion of the URL in the display as a default behavior... there are too many sites I've worked with where there are multiple posts with the same/similar names and only in seeing the URL can you be certain you're selecting the "right" post in a given scenario. Changing that such that the default behavior no longer includes some way of viewing/inspecting to see the URL would be a UX regression in my opinion.

richtabor commented 1 year ago

there are too many sites I've worked with where there are multiple posts with the same/similar names and only in seeing the URL

Yea for posts I can see that. Do you find that "posts" are the main case here? What about pages?

I'm not entirely convinced that it's necessary for pages, as you get the same information twice (see below). You're not searching via URL slug, but rather title. The URL slug can be validating (if its not the same as the title).

I'm not opposed to keeping the info; just questioning the validity of it remaining - in all use cases.

CleanShot 2023-05-26 at 13 32 20
fabiankaegy commented 1 year ago

@richtabor i would actually say especially for pages. A colleague just brought up a perfect and common usecase we see.

Imaging having multiple similar areas of a site that use parent / child relationships of pages. You may have a section about part a and part b of your company. Structured like so:

/company-a/about /company-b/about

In the current design there is no way to differentiate.

So any post type that is hierarchical is the most impacted

draganescu commented 1 year ago

@richtabor does the unlink button risk of being confused with a dismiss / close button? Could we do with a "Remove link" tertiary button at the bottom?

richtabor commented 1 year ago

@richtabor does the unlink button risk of being confused with a dismiss / close button?

I was more concerned about having both the "Edit" and "Unlink" buttons beside each other (one empowering, one destructive).

I'm fine with the "Unlink" button where it's at, or potentially remove it (as it's also in the block toolbar, as a selected state icon):

CleanShot 2023-05-30 at 11 46 48
MadtownLems commented 1 year ago

In testing out 6.3-beta-3, I immediately noticed the lack of an easy to use "open in a new tab" control for inline links.

It looks like the workflow to open an inline link in a new tab there is:

Create the inline link by setting its URL. Re-select the link. Click the edit icon. Open the 'advanced' bit. And only then can you set the link to open in a new tab.

This feels like way too many steps for something that I imagine is very commonly used, in addition to it just feeling wrong that I must first create it, then go back and edit it, to be able to do it at all.

getdave commented 1 year ago

@MadtownLems Thank you for your feedback. Please see https://github.com/WordPress/gutenberg/pull/52321

cuemarie commented 1 year ago

This is a smaller issue, but I wonder if https://github.com/WordPress/gutenberg/issues/45664 could be looked at as part of the LinkControl Refresh work here.

TLDR - if an Inline Image is linked, the LInkControl modal covers up the inline image width, making it difficult to change the size of the inline image. (You either need to remove the link, or switch to code editor to adjust the width).

getdave commented 1 year ago

Leaving a link to some useful context and feedback on the visual design from @elgato91.

draganescu commented 1 year ago

I would like to propose this flow as I think it's more clear and straight forward:

Link flows: create, edit, delete

link_states

Other states

other_states

Main ideas:

getdave commented 1 year ago

keep "open in new tab" and "no follow" as "settings" that require one extra click to see

Recent changes have made Open in new tab easy to find on the Link Preview step as a special concession to a particular workflow. I don't think we should continue this pattern for No follow however.

Remember that the Advanced section was added specifically to lay the foundations for adding more controls in Core and allowing extenders to add their own controls. Both of those are long standing feature requests (from users) which we cannot facilitate without making this change to the UI otherwise we would end up with a very cluttered interface.

add a global editor prefference that extertnal links should open in new tabs (this is for people who would have to make the extra click all the time - while everyone else will only occasionaly need to visit link settings)

I would be grateful if you would be open to exploring this option in a PR.

i think it's weird that the same action can be achieved in two places

Many affordances that seem trivial, were added specifically for a11y or UX reasons. We should be very careful when removing things like this (e.g. Unlink) as it can have serious consequences. For example what happens when the control is not used within a block toolbar?

always, always, end up with the preview after editing or changing settings

This is a good point that is already being addressed.

draganescu commented 1 year ago

keep "open in new tab" and "no follow" as "settings" that require one extra click to see

I don't agree. I think the majority of users (yes that is contentious) don't want/need these controls and they add additional complexity (too many choices leads to confusion).

I think you do agree but misread my comment :D - in my mockup they are not present and surfeced when the preview opens, but they're behind one extra click to open a settings panel, specifically to avoid option overwhelm and the suggestion that open in new tab is an expected practice. Se we agree!

For example what happens when the control is not used within a block toolbar?

When is that the case? I just can't see why would unlinking happen in a difference place than linking? Do we publish from top right and unpublish from bottom left? Aren't all formats working like this (undo from the sampe place as do)? Plus the popover UI element is finicky as an UX by default. Removing the link should be a more stable item imo.

elgato91 commented 1 year ago

@draganescu

The only thing I appreciate in these mockups is the inclusion of a button to easily copy the link. For the remainder, it is evident that you still do not grasp (or are intentionally overlooking) user feedback (as in #52799).

The "open in new tab" and "nofollow" controls MUST be readily accessible from the initial click at all times. They should not be tucked away in an advanced section, nor should they necessitate an extra click. Keep it easy, fast and intuitive. This is what is needed, nothing more.

The text field "text" is useless, it doesn't make much sense to change the anchor from there when you can do it from the editor.

Perhaps the best way to simplify this design is just to eliminate the advanced section and all the useless frills of this new design. Also because it is not yet clear what advantages it should bring.

draganescu commented 1 year ago

Hi @elgato91 - thanks for checking out my proposal :) I think we should water down the all or nothing approach, and figure out how to best answer the situation:

In my mockups, editing a link and setting its settings are equally important, both 1 click away from the preview. The preview's role is to check if the link is correct (a much more common action compared to editing).

We always need to remember that WordPress is the solution for a huge amount of people with extremely varied needs. No nice use case is to dictate for everyone else, because it makes no sense.

elgato91 commented 1 year ago

many people used open in new tab and no follow vor ver specific use cases (e.g. publishers with mostly outgoing links). These are not the average web users using WordPress, but a specific category.

Amateur users will have no problem making an extra click, because their work is not time-sensitive. Anyone who frequently works with wordpress will be impacted. However, requiring more effort from people to do something is against design principles, regardless of who the user is.

for this category of users a global preference would make a lot more sense than setting the link setting every single time they create a link. It's more beneficial to unset it in these cases when the link is internal.

Maybe it could be fine to set all outgoing links to open in a new tab (seo plugins already allow this), but it is absolutely not fine for "nofollow", which must be evaluated on a case-by-case basis. Anyway, you're taking away people's ability to choose and behave in a reasoned and granular way.

we should not need to bubble up in the interface a setting that has negative accessibility implications. As the UI was presented before it seems like opening in a new tab was a no impact practice, even recommended. It isn't. It is a specific setting, for a specific need, hence lower UI proeminence makes sense. In my mockups this costs one click.

I don't see what could be the negative accessibility implications of two controls that have already been present for long time and that anyone who uses a seo plugin (the majority of users) has extensive access to. The fact that it has no impact on the users workflow, or that it is very specific, is purely subjective reasoning. Again, it's bad design if you force people to do something with more effort.

It makes sense to have advanced sections when the controls are many and complex, for example setting the background gradients of a block, as is already done correctly in the UI. Not when it comes to a frequently used checkbox, which moreover represents the only two main checks associated with a link (and has been for decades!).

Are you designing for those who use WP frequently or for those who set up a blog and then never log in again?

We always need to remember that WordPress is the solution for a huge amount of people with extremely varied needs. No nice use case is to dictate for everyone else, because it makes no sense.

That's just what you're doing. You are dictating bad design that will impact the work of a huge amount of people. It is not our thought as a user, it would be enough to do a little research to realize how much all this is contrary to any UX design best practice.

beixco commented 1 year ago

My 2 cents on the editing a link flow, as a user, and because I've been redirected to this thread from another one:

When clicking on a link, it should display the maximum information without having to click on another button. My expectations would be to display directly:

The text anchor can easily be edited directly in the text editor. But I understand new users would enjoy seeing this field as well, as it's part of the basic a href code.

I don't really see the point in the copy button - most of the time, we create links by pasting a URL copied right before. But some users might need it.

I think the sponsored could be in the settings - but only because we don't sell links or do sponsored posts in my company. I guess off-page specialists would appreciate having it displayed along the no follow, too.

EDIT: I wouldn't have the save and cancel buttons. But when editing a URL or checking a box and leaving it by clicking in the text editor, it should automatically save the changes.

Hope this helps.

elgato91 commented 1 year ago

@beixco I agree with you, also imho this should be the expected link flow.

I think the sponsored could be in the settings - but only because we don't sell links or do sponsored posts in my company. I guess off-page specialists would appreciate having it displayed along the no follow, too.

Regarding the "sponsored" attribute, I don't think it's used much. If you're posting sponsored content, you could also use "nofollow" from the point of view of correct link marking, according to the current Google guidelines. I wouldn't even consider the case of paid links, as it goes against search engine guidelines. However, currently, this checkbox is implemented by SEO plugins. So, even if it's not in the core, users should still see it in the same place as the other checkboxes, because the plugin target to puts them in the same place.

Regarding the development of the core Link UI/UX, it would be enough to ensure that the checkboxes are always available and visible at a glance, without requiring further clicks.

TapiwaZvaks commented 1 year ago

@getdave I wish you would spend maybe a few hours blogging to realise how all this seems rather pointless to us. By the way, is there way for me to rollback to an earlier version of WordPress? This simple thing has led to a drastic cut in my productivity. I no longer enjoy my work since every time I need to click so many times simply to get a link to open in a new tab! Such a simple thing, yet made so cumbersome. As to your argument about different use cases... well you could be right. I only know about blogging. Maybe there are ways through which some other people use WordPress. But I doubt anyone in whatever use would enjoy having to click so many times for a simple action. @beixco I agree with you. Having to click on the Save button is just another... click. It's probably unnecessary. @elgato91 I understand the feeling. It seems there is no understanding of the requirement. There is a blinkered fixation with this idea of hiding useful stuff behind this Advanced section, allegedly in fulfilment of long standing requests from users. There is no hope here

draganescu commented 1 year ago

@TapiwaZvaks there is always hope. We're all trying to figure things out.

I went roaming across the internet to look at default link popups:

Google Docs Notion Squarespace Substack Webflow Wix
gdocs notion squarespace substack webflow wix

To my surprise nobody surfaces the target or rel link properties in the link creation step. I think times have changed. I think the industry took note of the fact that setting a link's target or rel is an advanced feature for users who optimize their links for increasing time on site or for tweaking their SEO work. Optimising time on site and tweaking SEO are both advanced work, they're not average user features - because average users building a web page generally don't have to open links in new tabs or instruct robots to not follow.

I think the flows I've drawn here are a very goood compromise compared to literally anything I've seen in my web roaming:

Everyone who contributes code and design to this effort in this issue has registered the dismay at the original change - it was not good, having to create the link, then open it, then click edit, then click advanced, then click open in new tab is too much. It's wrong. Feedback was extremely useful.

However, due to the fact that it is an industry wide best practice to not encourage setting link target or rel, we'll still consider these advanced features. So let's not fight an all or nothing battle as it's pointless. The incorporation of all the extraordinary and swift and quantitative feedback is that the 4 click mistake is now corrected to 1 extra click.

We all learned something and we all need to adjust to things that the evolving Internet teach us.

elgato91 commented 1 year ago

@draganescu

This seems like a huge bias to me - you're comparing tools that have different intended purposes than WP. Imho, this is the most wrong way to benchmark, and also to approach the design of an interface. You can't compare apples to pears.

It's important to keep in mind that WP's main purpose is blogging and content creation. Moreover, WP operates as a CMS, which inherently serves a purpose that is completely different from that of Google Docs, Notion, and Substack. It also differs from platforms like Squarespace (geared towards web design and blogging for entry-level users) and Wix (similar to Squarespace but even more focused as an entry-level site builder). On the other hand, Webflow is mainly intended for web design.

Now, I comprehend that WP is a multipurpose tool today, encompassing web design as well. I can understand that, as I use it also for webdesign. But you shouldn't make life difficult for bloggers and content creators just to accommodate noobs and web agencies creating websites for local bakeries. After all, is undeniable that even the least experienced users utilize plugins like Yoast for SEO or other similar tools that incorporate more link checks, and the web doesn't seem to have faced any catastrophic consequences due to this practice. Hence, the question arises: who actually benefits from this change?

However, due to the fact that it is an industry wide best practice to not encourage setting link target or rel

What is the source?

We all learned something and we all need to adjust to things that the evolving Internet teach us.

In my perspective, this doesn't represent an evolution of the web standards; instead, it seems like a regression in design thinking. This is particularly significant in a world where the discourse around human-centered design is growing. So, we're sorry about that, but no, we can't accept that this is right.

A sensible compromise could be keeping the advanced section always open and visible, allowing it to be operated without requiring additional clicks. And let the insertion of the additional controls, in that same position, continue to be handled by the seo plugins. Maybe this could be enabled in the settings. As others have mentioned, autosave would also be ideal, removing the necessity of pressing a button to save, which would align with the consistency of the rest of the UI.

draganescu commented 1 year ago

@elgato91 doing a simple face value cross industry comparison is effectively the opposite of bias.

However, due to the fact that it is an industry wide best practice to not encourage setting link target or rel

What is the source?

G200: Opening new windows and tabs from a link only when necessary - the way this is interpreted is that it should not be a front and center option, nor encouraged. The original WP UI presented this as an implied best practice. Moving it one level lower in the UI - just one click away in my mockups - implies more care should be offered to changing web link default behavior.

you shouldn't make life difficult for bloggers and content creators just to accommodate noobs and web agencies creating websites for local bakeries

This is bias 🤷🏻

WP's main purpose is blogging and content creation.

That is not accurate. The purpose WordPress is after is to democratize publishing - which particularly includes those you exclude from being "proffesional" enough to matter.

So, we're sorry about that, but no, we can't accept that this is right.

Either way - I personally have reached the end of my argument with you and will not reply further to feedback on the same topic from you. Anything else but this topic, I'll be more than hapy to contribute to the discussion.

I am also continually available to try and find improved ways from feedback which is not determined on having contained "the ultimate answer that cannot ever change for no reason".

elgato91 commented 1 year ago

I notice that the attitude here is to find arguments exclusively in support of one's own ideas and point of view. This approach consistently distorts the core of the problem: we're not talking about whether opening a link in another tab is W3C compliant, but we're talking about allowing people to set something with as little effort as possible.

You have no idea what benchmarking means, you have no idea what bias is, and you have no idea how to design interfaces for people.

Democratizing publishing evidently entails empowering people to focus on creating and publishing their content, giving individuals the freedom to choose how to do it, to be easily compliant with search engine rules, to create their own user experience, to achieve their business goals and so on. The software should seamlessly facilitate human actions, these are the basic principles of ergonomics.

And please, refrain from asserting that anyone can contribute to the project, because it is evident that there is no openness to reasoning. It is certainly not the best way that the product's development is entrusted to individuals who are not its primary users and exhibit minimal interest in understanding how it is used in the real world. However, I'm sure there are many other people in the community who have enough experience and expertise to understand the issue and do the right thing.

As meaningful participation in the discussion is evidently discouraged, contributing feels like an exercise in futility, akin to conversing with an impassive wall. Consequently, I too shall abstain from further engagement in this discourse.

Anyway, thank you for making all of us creators' jobs more complex and, in doing so, squandering valuable time that could have been dedicated to creating great content for people.

TapiwaZvaks commented 1 year ago

@elgato91 as noted this is a hopeless discussion because the developers are determined to make such a simple thing complex. And they are not listening to anyone. I never thought I would start looking up WordPress alternatives but I have been forced to do research in that direction. I mentioned on the other thread that this small thing is so annoying I want to pull my hair off each time I have to click 6 times (including on the Save button that's barely visible) where I used to click only once. It's something for which I would be willing to pay tens of dollars per month just to get things the way they were before.

The challenge here is that though anybody can contribute to WordPress, input from actual users is discounted. A user says "this is not working" and the response is "well, why don't you train to be a developer so you can make your own contributions?" It's like we are back in elementary school. Very disheartening. The developers are so fixated in their focus it's amazing. It's a perfect study in myopia. I am actually thinking of working on a PHD thesis on this.

The entire thing would be funny, save for the fact that my work involves writing at least 4 articles a day. It never occurred to me that doing the natural thing and getting links to open in a new tab would be considered atrocious. After all, when surfing across the web, which I do all day, I like to have my links open in a new tab. It's the intuitive thing to do because I don't want to close the "source," page that I am reading.

I have tracked this and concerns were raised even before the release of the latest version of WordPress. And the response even then was, well "users" have been demanding these changes "for long." I was just reading the W3 guide and oooh! Was that what this is all about? Opening in a new tab can be disorienting? Really? I never thought politics would enter into something as simple as giving a writer a simple way through which to decide link behavior. So we have to stop producing content for everyone because we need to please people with "difficulty perceiving visual content?"

It's a bunch of such-and-such to be very honest. I have previously written that all this energy could have been directed towards useful improvements that actual users have been clamoring for, such as having the ability to select a row or column in a table, or making tables generally more useful than they are now. But no!!! We need to hide useful stuff that's used by thousands, if not millions, daily so we can prevent people with difficult perceiving visual content from being disoriented.

In any case, I challenge you guys to find any writer who finds your latest changes useful. Just one, no matter how they use WordPress.

draganescu commented 1 year ago

@TapiwaZvaks the feedback is received and incorporated in changes. I believe everyone who authored the original changes got the point it was wrong. And as a proof feedback is working and it is a form of contribubtion right now in Gutenberg the open in new tab option has been surfaced back up.

Screenshot 2023-08-25 at 13 03 43

The goal is to land on the best option without accusations and fury guiding the process. On the side of streamlining the linking flow there are some arguments which need to be at least considered, just as the arguments around not streamlining it too much :) are considered as well.

We need to hide useful stuff that's used by thousands, if not millions, daily so we can prevent people with difficult perceiving visual content from being disoriented.

This is not something to dismiss so easily as it undermines the valid UX objections. Either way nothing is set in stone.

scruffian commented 1 year ago

What do you think about adding the advanced section to the creation step of links, as well as editing, something like this?

Screenshot 2023-08-25 at 18 26 05
draganescu commented 1 year ago

Yes @scruffian @getdave I think this is great, having an exdendable advanced area in edit mode which stays open once you open it it also just 1 extra click, like my mockups, but we get room to keep unline around in the popover.

kalimba666 commented 1 year ago

Because every big company has it, doesn't mean user wanted it. You take it for granted, you don't want to argue, or fight. But it doesn't mean it's advanced. It also doesn't mean this is the only right view. Vice versa could also be possible: People should learn the "advanced" stuff because it isn't advanced, it is necessary for a website to be found and to get visitors.

If you follow your path, you should add a site-wide option for every link open in a new tab and every external link opens in a new tab. Every other person has at least one extra step which makes it more complicated, which it shouldn't be. It also looks bad.

briangrider commented 1 year ago

Hi everyone, I believe these are all really important issues but I'd like to express concern about what @jasmussen suggested:

I don't think it would be the end of the world if we had to add back the "Add URL", but I support Rich's design, because it's currently way too easy to make a completely broken link, like just typing asdf and pressing Enter and getting something useless as a result. In that light, it might be good to do some very light validating such if the phrase includes a /, http, www, a # or even a ., then we show the URL suggestion. That would at least catch common "bad link" cases.

@richtabor, @jasmussen, I think validation is fine here if it's just for determining whether to show the url suggestion, but please don't stop users from adding strings that may not be actual urls. I'm sure there are many other use cases but something that I'm working on (and have had working for a long time) are dynamic template strings. For example, adding a url pulled from a custom field, etc. using just a string that is parsed. As it is now, this works perfectly with the core LinkControl but if validation is introduced, it's another hurdle for outside developers that doesn't really improve things too much (people should know if a link is an invalid format and be allowed to put whatever they want there). We could of course replace the default link format with a custom one and use a custom LinkControl if we have to but that would be exteremely unfortunate when things are working perfectly right now.

I also want to throw in that I think both nofollow and sponsored are very important, even if it feels like sponsored isn't used as often. On a blogging platform where people are regularly doing sponsored posts and using sponsored links, this option is a given. I am currently using a custom link format to add in both of these options and it would be awesome if we could ditch that completely.

Thanks all for all your hard work!

kalimba666 commented 1 year ago

I am getting a scrollbar and if I need to edit the link, because I'd like to open every link in a new tab, the edit mode for links appears somewhere and not fully visible. Means I need to scroll down a bit. I cannot read everything in the advanced mode because of it. So, scroll down is another extra click and more trouble. For scrolling I need to click on the scrollbar. Which closes the edit part for the link. So, I need to click again, another extra click. And that's the minimum of clicks if I happen to be lucky and find the right spot to open the edit mode again and be able to read everything. Otherwise it is a loop until I am able to see all of the edit part. Then I need to click and scroll around (within the edit part; because it get a scrollbar and a reason unknown to me, it still doesn't fit.

So still not fully convinced that this is at all a good idea. Except if you implement a setting somewhere in the site-wide settings to set "Open every link in "_blank" tab. Otherwise it's not effective and not close to fully in control (=optimized) and shouldn't be published.

richtabor commented 1 year ago

Except if you implement a setting somewhere in the site-wide settings to set "Open every link in "_blank" tab.

That's an option worth exploring.

kalimba666 commented 1 year ago

Except if you implement a setting somewhere in the site-wide settings to set "Open every link in "_blank" tab.

That's an option worth exploring.

If possible it should be the next thing in the next update. Because right now it's pretty annoying. The design is much complicated for me, it's not fix if you click on "add link" or "edit link" and the "advanced mode". Doesn't looks nice and lost most of the functionality it had.

firepainting commented 1 year ago

Blogger and non-dev here.

Just wanted to voice out my concerns (and rant).

1. Please have the tick-box "Open in new tab" immediately visible upon creating or editing a link. We had an okay thing going on before and getting rid of it apparently became a time-waster. As a blogger, I wouldn't want visitors to leave my blog when they click on an external link.

2. Please have a site-wide option to enable/disable displaying the tick-box "Open in new tab" with link creation/link editing. I'd prefer displaying it by default, though. I would guess serious SEO bloggers need that. But for those who don't, they could just hide it if they wanted.

3. Please have a site-wide option to enable all external links to open in a new tab. This is personal preference but I've always set external links that way anyway. Probably just an extension of number 2 above.

Here are plugins (which I don't use) that may prove that thousands of users need "Open in new tab":

This may be unrelated to this Issue, but please have a tick-box each for both NoFollow links and Sponsored links, and also have a site-wide option to enable/disable displaying them.

By 2023, 43.2% of all websites use WordPress and 97% of bloggers use WordPress (source). I think it's quite unreasonable for WordPress to still be depending on plugins just to make a link NoFollow or Sponsored (and while we're at it, include UGC links too). Integrate that into the core already.

Also, WordPress is a CMS. Why on earth would anyone compare WordPress with Google Docs, Notion and Substack? Even Squarespace, Webflow, and Wix comprise only 2% (source), 0.6% (source), and 2.5% (source) of all websites, respectively. Majority of CMS used is WordPress at 63.1%. CMS = WordPress! I chose WordPress because of that.

WordPress, by this time, should make it easy for users to comply with Google's SEO guidelines, within reason of course, and I think it is so within reason to conveniently include the options for "Open in new tab" and NoFollow/Sponsored/UGC links.

On URL previews: I manually check my links on the draft preview. I click them to see if they do open in a new tab. I'm not saying URL Preview is useless but I never needed it. But isn't just checking links on the draft preview better anyway? On my end I even have to scroll on the pop-up just because of the preview. I don't like it.

@elgato91, I'm with you. Please don't stop engaging. Majority of the devs seem reasonable and nice! It's just sad to see someone who insists on a narrative that seems far-fetched.

Of course WordPress newbies wouldn't know that once upon a time "Open in new tab" was just there, making our lives way easier. Why would anyone be proud of the "compromise" that you'd have to do "only one more click" lol. It's a terrible downgrade in UX. Users are already saying it's terrible.

Thanks everyone!

Thank you, Gutenberg devs. I still prefer the classic editor 😅️ but I love how Gutenberg relinquished me from the need for shortcodes. And since Gutenberg is the direction, you're doing God's work!

TapiwaZvaks commented 1 year ago

Blogger and non-dev here.

Just wanted to voice out my concerns (and rant).

1. Please have the tick-box "Open in new tab" immediately visible upon creating or editing a link. We had an okay thing going on before and getting rid of it apparently became a time-waster. As a blogger, I wouldn't want visitors to leave my blog when they click on an external link.

2. Please have a site-wide option to enable/disable displaying the tick-box "Open in new tab" with link creation/link editing. I'd prefer displaying it by default, though. I would guess serious SEO bloggers need that. But for those who don't, they could just hide it if they wanted.

3. Please have a site-wide option to enable all external links to open in a new tab. This is personal preference but I've always set external links that way anyway. Probably just an extension of number 2 above.

Here are plugins (which I don't use) that may prove that thousands of users need "Open in new tab":

This may be unrelated to this Issue, but please have a tick-box each for both NoFollow links and Sponsored links, and also have a site-wide option to enable/disable displaying them.

By 2023, 43.2% of all websites use WordPress and 97% of bloggers use WordPress (source). I think it's quite unreasonable for WordPress to still be depending on plugins just to make a link NoFollow or Sponsored (and while we're at it, include UGC links too). Integrate that into the core already.

Also, WordPress is a CMS. Why on earth would anyone compare WordPress with Google Docs, Notion and Substack? Even Squarespace, Webflow, and Wix comprise only 2% (source), 0.6% (source), and 2.5% (source) of all websites, respectively. Majority of CMS used is WordPress at 63.1%. CMS = WordPress! I chose WordPress because of that.

WordPress, by this time, should make it easy for users to comply with Google's SEO guidelines, within reason of course, and I think it is so within reason to conveniently include the options for "Open in new tab" and NoFollow/Sponsored/UGC links.

On URL previews: I manually check my links on the draft preview. I click them to see if they do open in a new tab. I'm not saying URL Preview is useless but I never needed it. But isn't just checking links on the draft preview better anyway? On my end I even have to scroll on the pop-up just because of the preview. I don't like it.

@elgato91, I'm with you. Please don't stop engaging. Majority of the devs seem reasonable and nice! It's just sad to see someone who insists on a narrative that seems far-fetched.

Of course WordPress newbies wouldn't know that once upon a time "Open in new tab" was just there, making our lives way easier. Why would anyone be proud of the "compromise" that you'd have to do "only one more click" lol. It's a terrible downgrade in UX. Users are already saying it's terrible.

Thanks everyone!

Thank you, Gutenberg devs. I still prefer the classic editor 😅️ but I love how Gutenberg relinquished me from the need for shortcodes. And since Gutenberg is the direction, you're doing God's work!

Too true. Unfortunately, nobody is listening. It's frustrating. Makes you feel like we are dealing with AI. Everything was perfect but somebody got fixated on this. Meanwhile, there is no way to select and copy an entire row or column in tables. But hey, the word is Wordpress is open source and everyone is free to contribute lol

firepainting commented 1 year ago

@TapiwaZvaks Don't get discouraged. That's why we're here I guess? 😅️

What I'm proud to bring to the table is that I'm a very average/normal/noob user. I have to bring it up because for all I know I could be representing hundreds of thousands who are just like me but who just chose to let it slide because meh.

But as an average/normal/noob user, I could well have insights that could be buried by the intricacies and pressure and whatnot brought about by code and (hopefully not) team politics.

And I believe this is a perfect example of just that. There seems to be a lot of "noise" that came about (I don't even know if this is the right thread) but I arrived here just because of the issue on "Open in new tab".

I get the vibe that the devs (who I'm sure are great at what they do) are putting their focus on a couple of things that are not needed at all. To be honest it even felt like this is only for resume purposes because clearly it's not working for a segment of the WordPress market (?) and the logic behind such decision is utterly questionable.

Not trying to be hateful or anything, I'm just kinda royally frustrated.

richtabor commented 1 year ago

Too true. Unfortunately, nobody is listening.

I'm sorry you feel that way, but I disagree.

There are a number of open LinkControl PRs and far more closed PRs — of which a number recent entries take the particular feedback on this post into consideration.

It takes a lot of effort, persistence, and at times discomfort to move things forward—all I ask is that you maintain a dialog of constructive feedback.

Everyone has varying ideas, workflows, methods, strategies, etc that make a holistic link experience difficult. A solution for you may not work for the majority of folks. But that's part of the beauty of WordPress. That there are plugins to extend it like you want. I'm pushing forward for a simpler, extendable, personalizable link experience.

We're not just listening, we're moving.

kalimba666 commented 1 year ago

@richtabor - It could be easier to see, appreciate and valued, if what has been posted here, is linked in pull requests (incl. a mention of the user suggesting it).

I feel discomfort reading the linked PRs from you, because I don't know what they all mean exactly. PRs seem for dev personal only to understand.

I don't know if you're listening or understand everything or someone else does. English my second language and I don't know if people understand what I mean. You have responded to a very small part of my posts, leaving me with the feeling of being misunderstood (regarding the rest of my explaination / suggestions).

But overall I cannot see if it's moving. And moving is very unspecific. Moving can also mean backwards for the majority or sideways. First is bad, the latter stays as it is but changes in a few lines of code, that don't have great effect.

JoostWP commented 1 year ago

Hi there,

Online publisher here who manages a number of blogs.

Truth be told I haven't got much to add to the people who already expressed their dissatisfaction with the way links are handled since WordPress 6.3.1.

Still, I wanted to share my take here.

The new way links are handled disrupts my workflow to such a degree, that my main website is still on WP 6.2.2. It's the first time in 3 years I've refused to update the WP core (my smaller sites are on 6.3.2). Obviously, this is less than ideal given that an outdated WP install poses security risks which will only compound over time.

What I find deeply, deeply concerning, is that the WordPress dev team picks a feature which works totally fine and makes it 10x more cumbersome for no logical reason.

I didn't expect that such a seemingly small thing causes me this much anger and stress. But whenever I'm managing links on my smaller sites, it makes me want to pull my hair out. I thought I'd be able to get used to it but truth be told it's been getting worse. I can't get over it.

This has to among the worst UX change that I've experienced in any software I've used over the past decade or so - can't think of anything else that comes close on the top of my head.

It displays a shocking lack of basic UX/UI understanding and being able to set priorities in product development. There are so, so many things in which Gutenberg could be improved (and hopefully bringing over some of these 5+ million people who still have gotten the Classic Editor installed), and instead, the choice towards degeneration is made.

Look, I appreciate the hard work that all WordPress devs are doing here. But when something is objectively terrible, things shouldn't be sugarcoated. I care a lot about WordPress. 100% of my income comes my WordPress websites. And I also want to see the platform grow, thrive, and get adopted by new users.

Nonsensical, arbitrary product decisions such as these are standing in the way of all of this.

TapiwaZvaks commented 1 year ago

I thought this issue was supposed to be resolved soon. Do we need to wait 6 months while going crazy? As @JoostWP says, this is a highly annoying issue and the developers are taking their sweet time coming up with a solution. Guys, is there a paid version of Wordpress that does not have these issues? I would be willing to pay to retain my sanity. This is clearly a major limitation of open source software. For the developers, working on this is probably just an afterthought. And they don't even know how their own software is used. Meanwhile, users are pulling their hair out by the roots because of this pretty basic functionality that was somehow messed up.

richtabor commented 1 year ago

@TapiwaZvaks This is planned for 6.4:

CleanShot 2023-10-14 at 09 59 42

JoostWP commented 1 year ago

@TapiwaZvaks This is planned for 6.4:

CleanShot 2023-10-14 at 09 59 42

Any word on appr. when 6.4 will get released?

MadtownLems commented 1 year ago

Any word on appr. when 6.4 will get released?

WordPress 6.4 is scheduled for November 7, 2023.

https://make.wordpress.org/core/6-4/

kalimba666 commented 1 year ago

@TapiwaZvaks This is planned for 6.4:

CleanShot 2023-10-14 at 09 59 42

Including a side-wide setting for all links opening in a new tab?