Link to specific Customizer section

I’ve got a site with a few extra Customizer sections. Is there a way to link directly to these so that section open when the page loads?

Something like http://mysites.com/wp-admin/customize.php#fonts

screenshot http://new.tinygrab.com/96412a96d208cf8ff0cf5803327b2d29e0ca68810e.png

Answers:

Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.

Method 1

As you’ve already discovered, links to the customizer always start with /wp-admin/customize.php.

Append ?autofocus[section] =section_name to checkout your section within the customizer. Both parameters (section and section_name) are registered within your customize_register hook:

$wp_customize->add_section

If you can’t find the hook, check the HTML markup of the customizer for further information. Both parameters are included within the list:

<li id="accordion-section-title_tagline" class="accordion-section control-section control-section-default">

Altogether your link may look something like this:

admin_url( '/customize.php?autofocus[section]=section_name' );

These are the links to the default customizer sections in Twenty Twenty WordPress theme:

  • Site Identity: /customize.php?autofocus[section]=title_tagline
  • Colors: /customize.php?autofocus[section]=colors
  • Theme Options: /customize.php?autofocus[section]=options
  • Cover Template: /customize.php?autofocus[section]=cover_template_options
  • Background Image: /customize.php?autofocus[section]=background_image
  • Menus: /customize.php?autofocus[panel]=nav_menus
  • Widgets: /customize.php?autofocus[panel]=widgets
  • Homepage Settings: /customize.php?autofocus[section]=static_front_page
  • Additional CSS: /customize.php?autofocus[section]=custom_css

Where to go from this?

I often find myself in need of a menu item from Appearance within the WordPress admin menu. So maybe this will be helpful for you, too:

add_action( 'admin_menu', 'wpse_custom_submenu_page' );
function wpse_custom_submenu_page() {
  add_submenu_page(
    'themes.php',
        __( 'Page title', 'textdomain' ),
        __( 'Menu title', 'textdomain' ),
        'manage_options',
        '/customize.php?autofocus[section]=section_name'
    );
}


All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

0 0 votes
Article Rating
Subscribe
Notify of
guest

0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x