From df9f7eb778275ff79415d2ce9843e7129e57e4db Mon Sep 17 00:00:00 2001 From: LogMANOriginal Date: Sun, 1 Dec 2019 13:24:11 +0100 Subject: [PATCH] [FacebookBridge] Fix permalink issue (#1358) Facebook has changed their strategy regarding permalinks, which now include lots of unnecessary target data. Fortunately it also contains the unique story id which we can utilize as URI. --- bridges/FacebookBridge.php | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/bridges/FacebookBridge.php b/bridges/FacebookBridge.php index c7436d34..5ce67f94 100644 --- a/bridges/FacebookBridge.php +++ b/bridges/FacebookBridge.php @@ -701,8 +701,15 @@ EOD; $uri = $post->find('abbr')[0]->parent()->getAttribute('href'); - if (false !== strpos($uri, '?')) { - $uri = substr($uri, 0, strpos($uri, '?')); + // Extract fbid and patch link + if (strpos($uri, '?') !== false) { + $query = substr($uri, strpos($uri, '?') + 1); + parse_str($query, $query_params); + if (isset($query_params['story_fbid'])) { + $uri = self::URI . $query_params['story_fbid']; + } else { + $uri = substr($uri, 0, strpos($uri, '?')); + } } //Build and add final item