Make WordPress Core

Opened 5 years ago

Closed 5 years ago

#45019 closed feature request (fixed)

Add a link to configure static home page on Welcome Panel

Reported by: professor44's profile professor44 Owned by: professor44's profile professor44
Milestone: 5.1 Priority: normal
Severity: minor Version:
Component: Administration Keywords: has-patch has-screenshots ui-feedback
Focuses: ui, administration Cc:

Description

The welcome panel has a few helpful links to get started in configuring your new WordPress. That being said one of the more complicated steps for new users is figuring our how to set their homepage to a static page. I think a quick link here will feel natural and help users in solving this problem.

I've posted the current view and my proposed solution below. I'm simply adding the text "Setup your homepage" to the Welcome Panel and linking it to wp-admin/options-reading.php.

I've considered adding a fourth link to the right hand column of the welcome panel but I don't think it makes a sense to limit or add links for visual balance in a panel that doesn't have true alignment anyways. The far left column doesn't align.

Adding a fourth link in the middle column looks good to me.

Attachments (11)

current.png (151.8 KB) - added by professor44 5 years ago.
Current Welcome Panel
proposal.png (147.1 KB) - added by professor44 5 years ago.
Proposed changes
alignment.png (23.1 KB) - added by professor44 5 years ago.
Alignment of columns in the panel
45019.diff (1.3 KB) - added by professor44 5 years ago.
Patch including a new link in the welcome panel
homepage-settings-1.png (31.7 KB) - added by nielslange 5 years ago.
homepage-settings-2.png (33.1 KB) - added by nielslange 5 years ago.
45019-2.diff (1.7 KB) - added by professor44 5 years ago.
45019.patch (1001 bytes) - added by mukesh27 5 years ago.
Patch if we have to add from Settings > Reading
45019-3.diff (2.9 KB) - added by professor44 5 years ago.
New patch to include if/else to cover whether the user has access to customizer permissions
45019-4.diff (6.2 KB) - added by professor44 5 years ago.
Fixed a grammatical error
45019-5.diff (1.4 KB) - added by professor44 5 years ago.
Was generating diffs incorrectly, new diff is correct

Download all attachments as: .zip

Change History (36)

@professor44
5 years ago

Current Welcome Panel

@professor44
5 years ago

Proposed changes

@professor44
5 years ago

Alignment of columns in the panel

#1 @professor44
5 years ago

  • Component changed from Help/About to Administration

#2 follow-ups: @joyously
5 years ago

I like the idea, but it's a little tricky with things that are done in the Customizer and things that are done on other admin pages. The home page is something that is still available in both (thank goodness!).

The things listed under Next Steps involve creating content. Deciding what goes on your home page might be difficult at the point of installation, since there is no content. You can't choose a non-existent page for the Home Page. Perhaps it is better under More Actions? Or just doesn't belong because you need content first?

#3 in reply to: ↑ 2 @professor44
5 years ago

Replying to joyously:

I like the idea, but it's a little tricky with things that are done in the Customizer and things that are done on other admin pages. The home page is something that is still available in both (thank goodness!).

The things listed under Next Steps involve creating content. Deciding what goes on your home page might be difficult at the point of installation, since there is no content. You can't choose a non-existent page for the Home Page. Perhaps it is better under More Actions? Or just doesn't belong because you need content first?

One of the more frustrating things I've seen with users is reverse engineering the homepage because the "hello world" post feels like a homepage when they first begin. I think this link will help users along the path of understanding which is the first biggest hurdle. They may not necessarily create a homepage at this moment but they will understand more about the structure of a homepage. This will lead to less confusion and less duplicate work.

@professor44
5 years ago

Patch including a new link in the welcome panel

#4 in reply to: ↑ 2 @professor44
5 years ago

Replying to joyously:

I like the idea, but it's a little tricky with things that are done in the Customizer and things that are done on other admin pages. The home page is something that is still available in both (thank goodness!).

The things listed under Next Steps involve creating content. Deciding what goes on your home page might be difficult at the point of installation, since there is no content. You can't choose a non-existent page for the Home Page. Perhaps it is better under More Actions? Or just doesn't belong because you need content first?

I meant to add: It's one of those very important things that you don't know how to do, or that you need to do until you spend time hunting around or building a homepage in the wrong place. This is one of those things that will help a user learn what they don't know.

Also vanilla WordPress comes with a sample page which can easily be reconfigured to a Home Page and will exist in the very earliest moments of building a site.

#5 @nielslange
5 years ago

@professor44 Looks really neat! In addition to what @joyously mentioned, you can actually create new pages directly within the homepage settings inside the customizer (see https://core.trac.wordpress.org/attachment/ticket/45019/homepage-settings-1.png and https://core.trac.wordpress.org/attachment/ticket/45019/homepage-settings-2.png). The direct link to the homepage settings section within the customizer is:

admin_url( 'customize.php?autofocus[control]=show_on_front' )

@professor44
5 years ago

#6 follow-up: @professor44
5 years ago

I added a new patch which modified the link, and it now goes to the customizer. Thanks for the tip @nielslange that was a good idea.

#7 in reply to: ↑ 6 @nielslange
5 years ago

Replying to professor44:

I added a new patch which modified the link, and it now goes to the customizer. Thanks for the tip @nielslange that was a good idea.

Always happy to help! 😉

#8 follow-up: @mukesh27
5 years ago

  • Keywords has-patch 2nd-opinion has-screenshots dev-feedback ui-feedback added
  • Severity changed from normal to minor
  • Type changed from enhancement to feature request
  • Version set to trunk

@professor44 and @nielslange we have to consider cases in which user don't use customize panel for there website and some how they block customize panel using action/filter or any other plugin in this case Setup your homepage link is not working for those users so we have to use generic link for Setup your homepage and that link is located at Admin Panel > Settings > Reading > Your homepage displays

@mukesh27
5 years ago

Patch if we have to add from Settings > Reading

#9 in reply to: ↑ 8 @professor44
5 years ago

Replying to mukesh27:

@professor44 and @nielslange we have to consider cases in which user don't use customize panel for there website and some how they block customize panel using action/filter or any other plugin in this case Setup your homepage link is not working for those users so we have to use generic link for Setup your homepage and that link is located at Admin Panel > Settings > Reading > Your homepage displays

I'm not sure I agree that we should benefit the blocking of the customizer. I don't believe there is a filter to disable the customizer, if there is I guess we could default to the customizer and checking for that filter we can fallback on the regular settings. However I don't think we should choose the regular settings over the customizer in the rare case that it's blocked.

#10 @pento
5 years ago

  • Keywords needs-refresh added; 2nd-opinion dev-feedback removed
  • Milestone changed from Awaiting Review to 5.0
  • Owner set to professor44
  • Status changed from new to assigned
  • Version trunk deleted

Thank you for the patches, @professor44 and @mukesh27!

We do need to check whether the current user can use the customizer, and we need to check if they're able to change the option in the first place.

There's an example nearby of how we can do these checks:

source:/trunk/src/wp-admin/includes/dashboard.php@43571:1734-1737#L1734

For this new link, the outer if needs to check for the manage_options permission.

@professor44
5 years ago

New patch to include if/else to cover whether the user has access to customizer permissions

#11 @professor44
5 years ago

@mukesh27 thanks for the feedback. I've added a ternary to check for whether the current admin has permission to use the customizer, if they don't the new link falls-back to the reading settings section.

#12 @professor44
5 years ago

@pento thank you for the help and advice. I didn't change the outer if to include "manage options" because the entire panel only shows if

current_user_can( 'edit_theme_options' ) )

which will cover our bases.

#13 @melchoyce
5 years ago

I think "Setup" here should be "Set up" — I think setup is a noun, vs. set up the verb.

This ticket was mentioned in Slack in #design by melchoyce. View the logs.


5 years ago

#15 @karmatosed
5 years ago

Really interesting idea. My only thought is one of perception. I wonder does firstly everyone know what a homepage is? Beyond that does every site need a homepage? I am not sure these are good assumption to make and unsure the proposed solution eases this. It's complicated but interesting to explore how we ease this. I have a feeling there is a balance between this being useful and not feeling you have to have on every site because there.

Last edited 5 years ago by karmatosed (previous) (diff)

#16 @boemedia
5 years ago

I don't have a chance to test the patch, but I'd go for "Select homepage" or instead of setup in the dashboard link. At least this refers to the options given after clicking the link (assuming this goes to an accessible place for every WordPress user, whether this is the customizer or not).

Agree with Joy that it looks weird in the list of next steps, but from my opinion the same goes for 'More actions'. There's no clear structure and context in the options given, but that's another discussion.

Basically, I recognise the frustration of choosing a static page as a homepage over the blog from my own clients. Therefore giving them a quick link from the dashboard would be a good first step.

This ticket was mentioned in Slack in #core by mukeshpanchal27. View the logs.


5 years ago

#18 @professor44
5 years ago

@karmatosed @boemedia Thanks for the feedback.

I think it's important to recognize that WordPress defines the meaning of "homepage" throughout the customizer and settings area. "Homepage Settings" is used in the customizer and "Your homepage displays" is used in the reading settings area.

The question "I wonder does firstly everyone know what a homepage is?" relates to something bigger than this small link, because it's a pattern we use throughout core.

"Beyond that does every site need a homepage?" Yes as WordPress currently requires the use of a homepage in some fashion, either as a list of recent posts, a static page, or some other fun way our users decide to display their homepage.

If the question is "Does every site need a static homepage?" the answer is no. However, I do think that configuring your homepage is a major area of confusion for new users and a quick link is an important first step to reducing this confusion.

"Agree with Joy that it looks weird in the list of next steps, but from my opinion the same goes for 'More actions'. There's no clear structure and context in the options given, but that's another discussion."

If WordPress core didn't default to having recent posts on the homepage then "Setting up your homepage" would be a required "Next Step". Since we choose a default it's not a required next step, but it also makes the assumption that the new site is going to be a blog, news, or updates site. I believe this to be a wrong assumption for most new users. WordPress has been trending towards a SMB solution over the years and assuming that the site is a blog or wants updates on the homepage I believe actually results in the default setting actually benefiting the minority of new users out of the box.

This of course is a bigger problem to solve, which is why I'm proposing a simple link for now. We can see how effective it is and go from there.

@melchoyce thank you for the grammar check, fixing that now.

@professor44
5 years ago

Fixed a grammatical error

#19 follow-up: @mukesh27
5 years ago

Hi @professor44 i think you have added some other code change in 45019-4.diff​ confirm it please.

@professor44
5 years ago

Was generating diffs incorrectly, new diff is correct

#20 in reply to: ↑ 19 @professor44
5 years ago

Replying to mukesh27:

Hi @professor44 i think you have added some other code change in 45019-4.diff​ confirm it please.

Thanks @mukesh27 for pointing that out, I was creating my diffs incorrectly, I have fixed that and uploaded a new diff.

#21 @pento
5 years ago

  • Keywords needs-refresh removed

45019-5.diff looks good.

@karmatosed, @boemedia: Seems like this is a decent small win that can be added adjacent to discussions about the larger changes that should happen to the new install experience.

The location works for me: the last column is very much the "things that a large percentage of sites will want to change, but not all" location. We can't put everything there, of course, but I think this particular setting qualifies for being called out here.

Apart from that, are there any more tweaks to the wording? "Set up your homepage" seems pretty clear, but I'm always happy to try some different colours on this bikeshed. 😉

#22 follow-up: @karmatosed
5 years ago

I am not against it getting in but still think it throws confusion if you don't have a theme that has a homepage. It's one reason why I'd go against adding it. If everyone agrees though happy to.

#23 in reply to: ↑ 22 @professor44
5 years ago

Replying to karmatosed:

I am not against it getting in but still think it throws confusion if you don't have a theme that has a homepage. It's one reason why I'd go against adding it. If everyone agrees though happy to.

Thanks for the feedback. I do think it's important to note that every WordPress site and theme has a homepage. The default homepage is just a list of posts, but it should still be put under consideration for a new user as it's important to know what their options are; especially since many new sites use a static homepage.

:)

#24 @pento
5 years ago

  • Milestone changed from 5.0 to 5.1

#25 @pento
5 years ago

  • Resolution set to fixed
  • Status changed from assigned to closed

In 44485:

Admin: Add a "Set up your homepage" link to the Welcome panel.

As many WordPress sites use a static homepage rather than a blog, this link gives a natural next step for new sites owners wanting to configure their site in this manner.

Props professor44, joyously, nielslange, mukesh27, melchoyce.
Fixes #45019.

Note: See TracTickets for help on using tickets.