How to append to title via functions.php for auto-posting plugin [duplicate]

Whoa, this Plugin was a nightmare to look through.

But I got a solution for you.
In the description for your links, you can use the placeholder %FULLTITLE% instead of %TITLE%. %FULLTITLE% applies the filters for the title.

From nxs_functions_adv.php Lines 19 & 20:

if (preg_match('/%TITLE%/', $msg)) { $title = nxs_doQTrans($post->post_title, $lng); $msg = str_ireplace("%TITLE%", $title, $msg); }                    
if (preg_match('/%FULLTITLE%/', $msg)) { $title = apply_filters('the_title', nxs_doQTrans($post->post_title, $lng));  $msg = str_ireplace("%FULLTITLE%", $title, $msg); }          

Yes, this is actually how the code is formatted in the plugin.

This solves your first issue.

The next thing to do is to add Open Graph information to your header, and applying the title filter to it. For example for facebook (original from WPBeginner):

//Adding the Open Graph in the Language Attributes
function f711_add_opengraph_doctype( $output ) {
    return $output . ' xmlns:og="http://opengraphprotocol.org/schema/" xmlns:fb="http://www.facebook.com/2008/fbml"';
}
add_filter('language_attributes', 'f711_add_opengraph_doctype');

//Lets add Open Graph Meta Info

function f711_insert_fb_in_head() {
    global $post;
    if ( !is_singular()) //if it is not a post or a page
        return;
    echo '<meta property="og:title" content="' . get_the_title() . '"/>';
    echo '<meta property="og:type" content="article"/>';
    echo '<meta property="og:url" content="' . get_permalink() . '"/>';
    echo '<meta property="og:site_name" content="' . get_bloginfo( 'title' ) . '"/>';
    if(!has_post_thumbnail( $post->ID )) { //the post does not have featured image, use a default image
        $default_image="http://example.com/image.jpg"; //replace this with a default image on your server or an image in your media library
        echo '<meta property="og:image" content="' . $default_image . '"/>';
    }
    else{
        $thumbnail_src = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'medium' );
        echo '<meta property="og:image" content="' . esc_attr( $thumbnail_src[0] ) . '"/>';
    }
    echo "
";
}
add_action( 'wp_head', 'f711_insert_fb_in_head', 5 );

IMPORTANT be sure that you do not already include this information. For example YOAST SEO does that – and this could get confusing for facebook. They use this information as the title of their link boxes.

Finally, I’d suggest an alteration to your function: lose the in_the_loop() to allow the filter to be applied everywhere. Also, as @PieterGoosen pointed out, I skipped the needless check for function_exists().

function append_album_review_to_title( $title ) {

    global $post;
    $text="Album Review: ";

    if ( get_post_type( $post->ID ) == 'album_review' ){
        return $text . $title;
    } else {
        return $title;
    }

}
add_filter('the_title', 'append_album_review_to_title');