I saw in this post that D8 does not support the passing of extra menu arguments. Several posts on DA gives workable solutions, but they don't fit this use case.

The contrib module I am porting depends heavily on using those the extra arguments passed to on the route /node/1/my_thing. Adding my_route causes a page_not_found error.

my_thing is not a tab but a parameter that generates content to merged into the view of the node.

As far as I know I cannot alter the behavior of core's route entity.node.canonical

1 Answer 1


To answer my own question:

So in my case the route entity.node.canonical is not defined by my own module and although I want to use it in my module with an extra parameter, I don't want to mess with it.

I have chosen to use a query parameter (using ?) instead.


if you need the id you can get it from the request object:

$id = \Drupal::request()->query->get('id')

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.