diff --git a/includes/class-syndication-wp-xmlrpc-client.php b/includes/class-syndication-wp-xmlrpc-client.php
index 627d90893e36df3db9c969f14baa5fcc6e17b70a..85a1aa62cde175b3394f853bfc5b93acb254c295 100644
--- a/includes/class-syndication-wp-xmlrpc-client.php
+++ b/includes/class-syndication-wp-xmlrpc-client.php
@@ -35,41 +35,50 @@ class Syndication_WP_XMLRPC_Client extends WP_HTTP_IXR_Client implements Syndica
 	}
 
 	function post_push_send_thumbnail( $remote_post_id, $post_id ) {
-		$thumbnail_id = get_post_thumbnail_id( $post_id );
-		$syndicated_thumbnail_id = get_post_meta( $post_id, '_syn_push_syndicated_thumbnail', true );
-
-		if ( ! $thumbnail_id ) {
-			if ( $syndicated_thumbnail_id ) {
-				$result = $this->query(
-					'syndication.deleteThumbnail',
-					'1',
-					$this->username,
-					$this->password,
-					$remote_post_id
-				);
 
-				delete_post_meta( $post_id, '_syn_push_syndicated_thumbnail' );
+		// Support for non-core images, like from the Multiple Post Thumbnail plugin
+		$thumbnail_meta_keys = apply_filters( 'syn_xmlrpc_push_thumbnail_metas', array( '_thumbnail_id' ), $post_id );
+
+		foreach ( $thumbnail_meta_keys as $thumbnail_meta ) {
+			$thumbnail_id = get_post_meta( $post_id, $thumbnail_meta, true );
+			$syn_local_meta_key = '_syn_push_syndicated_' . $thumbnail_meta;
+			$syndicated_thumbnail_id = get_post_meta( $post_id, $syn_local_meta_key, true );
+
+			if ( ! $thumbnail_id ) {
+				if ( $syndicated_thumbnail_id ) {
+					$result = $this->query(
+						'syndication.deleteThumbnail',
+						'1',
+						$this->username,
+						$this->password,
+						$remote_post_id,
+						$thumbnail_meta
+					);
 
+					delete_post_meta( $post_id, $syn_local_meta_key );
+
+				}
+				continue;
 			}
-			return;
-		}
 
-		if ( $syndicated_thumbnail_id == $thumbnail_id )
-			return;
+			if ( $syndicated_thumbnail_id == $thumbnail_id )
+				continue;
 
-		list( $thumbnail_url ) = wp_get_attachment_image_src( $thumbnail_id, 'thumbnail' );
+			list( $thumbnail_url ) = wp_get_attachment_image_src( $thumbnail_id, 'full' );
 
-		$result = $this->query(
-			'syndication.addThumbnail',
-			'1',
-			$this->username,
-			$this->password,
-			$remote_post_id,
-			$thumbnail_url
-		);
+			$result = $this->query(
+				'syndication.addThumbnail',
+				'1',
+				$this->username,
+				$this->password,
+				$remote_post_id,
+				$thumbnail_url,
+				$thumbnail_meta
+			);
 
-		if ( $result ) {
-			update_post_meta( $post_id, '_syn_push_syndicated_thumbnail', $thumbnail_id );
+			if ( $result ) {
+				update_post_meta( $post_id, $syn_local_meta_key, $thumbnail_id );
+			}
 		}
 	}
 
@@ -114,7 +123,7 @@ class Syndication_WP_XMLRPC_Client extends WP_HTTP_IXR_Client implements Syndica
 			return new WP_Error( $this->getErrorCode(), $this->getErrorMessage() );
 		}
 
-		$remote_post_id = (int) $this->get_response();
+		$remote_post_id = (int) $this->getResponse();
 
 		do_action( 'syn_xmlrpc_push_new_post_success', $remote_post_id, $post_ID );
 
@@ -388,6 +397,7 @@ class Syndication_WP_XMLRPC_Client_Extensions {
 		$password	    = $args[2];
 		$post_ID            = (int)$args[3];
 		$thumbnail_url     = esc_url_raw( $args[4] );
+		$meta_key = ! empty( $args[5] ) ? sanitize_text_field( $args[5] ) : '_thumbnail_id';
 
 		if ( ! $post_ID )
 			return new IXR_Error( 500, __( 'Please specify a valid post_ID.', 'syndication' ) );
@@ -421,7 +431,11 @@ class Syndication_WP_XMLRPC_Client_Extensions {
 		if( empty( $thumbnail_id ) )
 			return new IXR_Error( 500, __( 'Sorry, looks like the image upload failed.', 'syndication' ) );
 
-		$thumbnail_set = set_post_thumbnail( $post_ID, $thumbnail_id );
+		if ( '_thumbnail_id' == $meta_key )
+			$thumbnail_set = set_post_thumbnail( $post_ID, $thumbnail_id );
+		else
+			$thumbnail_set = update_post_meta( $post_ID, $meta_key, $thumbnail_id );
+
 		if ( ! $thumbnail_set )
 			return new IXR_Error( 403, __( 'Could not attach post thumbnail.' ) );
 
@@ -437,6 +451,7 @@ class Syndication_WP_XMLRPC_Client_Extensions {
 		$username	    = $args[1];
 		$password	    = $args[2];
 		$post_ID            = (int)$args[3];
+		$meta_key = ! empty( $args[4] ) ? sanitize_text_field( $args[4] ) : '_thumbnail_id';
 
 		if ( !$user = $wp_xmlrpc_server->login( $username, $password ) )
 			return $wp_xmlrpc_server->error;
@@ -444,7 +459,11 @@ class Syndication_WP_XMLRPC_Client_Extensions {
 		if ( ! current_user_can( 'edit_post', $post_ID ) )
 			return new IXR_Error( 401, __( 'Sorry, you are not allowed to post on this site.' ) );
 
-		$result = delete_post_thumbnail( $post_ID );
+		if ( '_thumbnail_id' == $meta_key )
+			$result = delete_post_thumbnail( $post_ID );
+		else
+			$result = delete_post_meta( $post_ID, $meta_key );
+
 		if ( ! $result )
 			return new IXR_Error( 403, __( 'Could not remove post thumbnail.' ) );