Return multiple values ​in a shortcode attribute

post__in takes an array of post IDs. What you are passing is a string into an array

Try to change code a bit e.g.

   // Check if href has a value before we continue to eliminate bugs
    if ( !$value ['id_post'] )
        return false;


    $post_ids_array = explode(',', $value['id_post']);

    $args = array(
        'post__in' => $post_ids_array,
        'orderby' => 'date',
        'order' => 'DESC'
    );

error code: 523