Create widget area in wordpress dashboard pages section?

How to create a widget area in wordpress pages section. if I add below code in my functions.php file the widget created in dashboard menu section I want to add additional widget in my pages section not in dashboard.

Add a widget to the dashboard.

Read More
 //This function is hooked into the 'wp_dashboard_setup' action below.



function example_add_dashboard_widgets() {

wp_add_dashboard_widget(
             'example_dashboard_widget',         // Widget slug.
             'Example Dashboard Widget',         // Title.
             'example_dashboard_widget_function' // Display function.
    );  

}

add_action( 'wp_dashboard_setup', 'example_add_dashboard_widgets' );

Create the function to output the contents of our Dashboard Widget.

function example_dashboard_widget_function() {

// Display whatever it is you want to show.

echo "Hello World, I'm a great Dashboard Widget";
} 

Related posts

Leave a Reply

3 comments

  1. you should register sidebar in functions.php as

    if (function_exists('register_sidebar')) {  
         register_sidebar(array(  
          'name' => 'widget_name',  
          'id'   => 'widget-id',  
          'description'   => 'Type something here',  
          'before_widget' => '<div id="one" class="two">',  
          'after_widget'  => '</div>',  
          'before_title'  => '<h2>',  
          'after_title'   => '</h2>'  
         ));  
        }
    

    it will register sidebar(widget) in your dashboard. Now you can you is it anywhere by

    <?php dynamic_sidebar('widget-id'); ?>
    
  2. This function already exists in default theme

        function twentyfourteen_widgets_init() {
        require get_template_directory() . '/inc/widgets.php';
        register_widget( 'Twenty_Fourteen_Ephemera_Widget' );
    
        register_sidebar( array(
            'name'          => __( 'Primary Sidebar', 'twentyfourteen' ),
            'id'            => 'sidebar-1',
            'description'   => __( 'Main sidebar that appears on the left.', 'twentyfourteen' ),
            'before_widget' => '<aside id="%1$s" class="widget %2$s">',
            'after_widget'  => '</aside>',
            'before_title'  => '<h1 class="widget-title">',
            'after_title'   => '</h1>',
        ) );
        register_sidebar( array(
            'name'          => __( 'Content Sidebar', 'twentyfourteen' ),
            'id'            => 'sidebar-2',
            'description'   => __( 'Additional sidebar that appears on the right.', 'twentyfourteen' ),
            'before_widget' => '<aside id="%1$s" class="widget %2$s">',
            'after_widget'  => '</aside>',
            'before_title'  => '<h1 class="widget-title">',
            'after_title'   => '</h1>',
        ) );
        register_sidebar( array(
            'name'          => __( 'Footer Widget Area', 'twentyfourteen' ),
            'id'            => 'sidebar-3',
            'description'   => __( 'Appears in the footer section of the site.', 'twentyfourteen' ),
            'before_widget' => '<aside id="%1$s" class="widget %2$s">',
            'after_widget'  => '</aside>',
            'before_title'  => '<h1 class="widget-title">',
            'after_title'   => '</h1>',
        ) );
    }
    add_action( 'widgets_init', 'twentyfourteen_widgets_init' );
    

    you can create multiple widget area by copy and pasting this and chage the id every time

    register_sidebar( array(
            'name'          => __( 'new area', 'twentyfourteen' ),
            'id'            => 'sidebar-5',
            'description'   => __( 'Appears in the footer section of the site.', 'twentyfourteen' ),
            'before_widget' => '<aside id="%1$s" class="widget %2$s">',
            'after_widget'  => '</aside>',
            'before_title'  => '<h1 class="widget-title">',
            'after_title'   => '</h1>',
        ) );
    }
    
  3. In function.php add:

    function create_widget($name, $id, $description) {
    
        register_sidebar(array(
            'name' => __( $name ),    
            'id' => $id,
            'description' => __( $description ),
            'before_widget' => '<div id="'.$id.'" class="widget %1$s %2$s">',
            'after_widget' => '</div>',
            'before_title' => '<h3>',
            'after_title' => '</h3>'
        ));
    
    }
    
    
        create_widget("Header", "uptop", "Displays in the header of the site, above the title"); // Create the actual widgets
    

    Then add next code in place u wanna use this area, for example in your header.php:

    <?php if ( !dynamic_sidebar('uptop') ); ?>