It is possible to add extra button under the ‘publish’ button in the post of wordpress? and how?

Here is how you can add another button to the admin page.

Download the MetaBox plugin

Create a file called “button.php” in the wp-content folder
Inlcude “button.php” in functions.php
In button.php, type:

add_filter( 'rwmb_meta_boxes', 'admin_button_register_meta_boxes' );

function your_prefix_register_meta_boxes( $meta_boxes ) {

    $prefix = 'admin_button_';

    $meta_boxes[] = array(

        'id'         => 'standard',

        'title'      => esc_html__( 'Standard Fields', 'admin_button' ),

        'post_types' => array( 'post', 'page' ),

        'context'    => 'side',

        'priority'   => 'high',

        'autosave'   => true,
        // List of meta fields
        'fields'     => array(
             array(
                'id'   => 'custom_html',
                // Field name: usually not used
                // 'name' => __( 'Custom HTML', 'admin_button' ),
                'type' => 'custom_html',
                // HTML content
                'std'  => ' ',

            ),
           ),
      );

    return $meta_boxes;
}

Now you have a form controlled by the button. Depending on what you want to do with the button, you can have a PHP method check to see if the form was posted or you can have the button trigger a javascript event.

Hope that helps!