I have a sidebar on my site and there I want to show the current post's meta information, such as the last modified date, the author and more.

Thus I wrote the following function:

    function showPostMetaInfo()
    {   
        global $post;
    
        setup_postdata($post);
    
        $mypost = get_post();
    
                $string.= "<table id='meta-info'>"
                        . "<thead>"
                        . "<tr>"
                        . "<th> Meta Type </th>"
                        . "<th> Value"
                        . "</tr>"
                        . "</thead>"
                        . "<tbody>"
                        . "<tr>"
                        . "<td> Title </td>"
                        . "<td>".get_the_title()."</td>"
                        . "</tr>"
                        . "<tr>"
                        . "<td> Author </td>"
                        . "<td>".get_the_author()."</td>"
                        . "</tr>"
                        . "<tr>"
                        . "<td> Published </td>"
                        . "<td>".get_the_date()."</td>"
                        . "</tr>"
                        . "<tr>"
                        . "<td> Last Modified </td>"
                        . "<td>".get_the_modified_date()."</td>"
                        . "</tr>"
                        . "<tr>"
                        . "<td> Categories </td>"
                        . "<td>".listCategories()."</td>"
                        . "</tr>"
                        . "<tr>"
                        . "<td> Tags </td>"
                        . "<td>".listTags()."</td>"
                        . "</tr>"
                        . "</tbody>"
                        . "</table>";
        
        return $string;
    }

However, `var_dump($mypost)` returns NULL.

From what I understand this is because I call `get_post()` before the information is ready.

My problem now is that I don't know **WHERE and HOW and AFTER WHICH HOOK** to call `add_action(...)` properly. The function responsible for the sidebar is `createPageInfo( $type )` where `$type` can be single, page or null. How to pass that argument `$type` to add_action properly?

I might have a conceptual misunderstanding but here's roughly how i built  my current site:

index.php:

    ...
    get_header();
    createMainPanel();
    get_sidebar();
    get_footer();
    ...

sidebar.php:

     ...
     if( is_single() || is_page() )
        {
            if( is_single() ){createPageInfo( "single" );}
            elseif ( is_page() ){createPageInfo( "page" );}
        }
        
        else
        {
            createPageInfo ( null );
        }
     ...