Loading core/modules/link/src/Plugin/migrate/process/FieldLink.php +6 −1 Original line number Diff line number Diff line Loading @@ -60,10 +60,15 @@ public function __construct(array $configuration, $plugin_id, $plugin_definition */ protected function canonicalizeUri($uri) { // If we already have a scheme, we're fine. if (empty($uri) || parse_url($uri, PHP_URL_SCHEME)) { if (parse_url($uri, PHP_URL_SCHEME)) { return $uri; } // Empty URI and non-links are allowed. if (empty($uri) || in_array($uri, ['<nolink>', '<none>'])) { return 'route:<nolink>'; } // Remove the <front> component of the URL. if (strpos($uri, '<front>') === 0) { $uri = substr($uri, strlen('<front>')); Loading core/modules/link/tests/src/Unit/Plugin/migrate/process/FieldLinkTest.php +12 −0 Original line number Diff line number Diff line Loading @@ -86,6 +86,18 @@ public function canonicalizeUriDataProvider() { 'http://www.example.com/page#links', 'http://www.example.com/page#links', ], 'empty' => [ '', 'route:<nolink>', ], 'No link' => [ '<nolink>', 'route:<nolink>', ], 'none' => [ '<none>', 'route:<nolink>', ], ]; } Loading Loading
core/modules/link/src/Plugin/migrate/process/FieldLink.php +6 −1 Original line number Diff line number Diff line Loading @@ -60,10 +60,15 @@ public function __construct(array $configuration, $plugin_id, $plugin_definition */ protected function canonicalizeUri($uri) { // If we already have a scheme, we're fine. if (empty($uri) || parse_url($uri, PHP_URL_SCHEME)) { if (parse_url($uri, PHP_URL_SCHEME)) { return $uri; } // Empty URI and non-links are allowed. if (empty($uri) || in_array($uri, ['<nolink>', '<none>'])) { return 'route:<nolink>'; } // Remove the <front> component of the URL. if (strpos($uri, '<front>') === 0) { $uri = substr($uri, strlen('<front>')); Loading
core/modules/link/tests/src/Unit/Plugin/migrate/process/FieldLinkTest.php +12 −0 Original line number Diff line number Diff line Loading @@ -86,6 +86,18 @@ public function canonicalizeUriDataProvider() { 'http://www.example.com/page#links', 'http://www.example.com/page#links', ], 'empty' => [ '', 'route:<nolink>', ], 'No link' => [ '<nolink>', 'route:<nolink>', ], 'none' => [ '<none>', 'route:<nolink>', ], ]; } Loading