Skip to content

Instantly share code, notes, and snippets.

@ajskelton
Last active February 13, 2023 08:04
Show Gist options
  • Star 12 You must be signed in to star a gist
  • Fork 9 You must be signed in to fork a gist
  • Save ajskelton/27369df4a529ac38ec83980f244a7227 to your computer and use it in GitHub Desktop.
Save ajskelton/27369df4a529ac38ec83980f244a7227 to your computer and use it in GitHub Desktop.
Add a Dropdown-pages field to the WordPress Customizer.
$wp_customize->add_setting( 'themeslug_dropdownpages_setting_id', array(
'capability' => 'edit_theme_options',
'sanitize_callback' => 'themeslug_sanitize_dropdown_pages',
) );
$wp_customize->add_control( 'themeslug_dropdownpages_setting_id', array(
'type' => 'dropdown-pages',
'section' => 'custom_section', // Add a default or your own section
'label' => __( 'Custom Dropdown Pages' ),
'description' => __( 'This is a custom dropdown pages option.' ),
) );
function themeslug_sanitize_dropdown_pages( $page_id, $setting ) {
// Ensure $input is an absolute integer.
$page_id = absint( $page_id );
// If $page_id is an ID of a published page, return it; otherwise, return the default.
return ( 'publish' == get_post_status( $page_id ) ? $page_id : $setting->default );
}
@ferdausalom
Copy link

@ajskelton

sorry, I am just a learner till now. Still, I am unable how I can do it by javascript. If you can help it would be appreciated.

BTW thanks for your suggestion.

@Joshua-ansah
Copy link

How can I instead of drop-down pages to drop-down custom links. Because I used custom links on my navbar

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment