Este es el ejemplo de acceder a los parámetros de URL y pasarlos a una plantilla TWIG. Estoy considerando que ya ha creado su módulo y los archivos necesarios y supongo que "/ test? Fn = admin" es su URL.
- En su archivo .module implemente hook_theme y defina las variables y el nombre de la plantilla (Asegúrese de reemplazar "_" con "-" al crear el archivo de plantilla)
function my_module_theme () {
return [
'your_template_name' => [
'variables' => [
'first_name' => NULL,
],
];
}
Ahora cree su controlador y ponga el siguiente código en él.
namespace Drupal\my_module\Controller;
use Drupal\Core\Controller\ControllerBase;
use Symfony\Component\HttpFoundation\Request;
class MyModule extends ControllerBase {
public function content(Request $request) {
return [
'#theme' => 'my_template',
'#first_name' => $request->query->get('fn'), //This is because the parameters are in $_GET, if you are accessing from $_POST then use "request" instead "query"
];
}
}
Ahora en su archivo TWIG que debe ser "my-template.html.twig" puede acceder a este parámetro como,
<h3>First Name: {{ first_name }}</h3>
Y ya está hecho. Espero que esto ayude.