Drupal 7: meerdere pagina's voor één knooppunt

We vermelden evenementen op onze Drupal 7-site, maar we willen dat onze gebruikers zich via een eenvoudig formulier kunnen registreren voor deze evenementen. We gebruiken Pathauto om URL-aliassen voor evenementen te genereren met het volgende patroon: events/[node: title] . We willen graag een andere pagina met de alias events/register/[node: title] die het registratieformulier zou presenteren. We willen ook tpl.php-bestanden gebruiken voor het maken van de sjablonen, zoals we doen voor de rest van de site.

Eventuele ideeën over hoe we dit kunnen bereiken? Bedankt.

1

2 antwoord

I would put a register button on the event/ page via the node.tpl.php file. If all your nodes are not registerable, then you can check the node by getting the $nid with $node->nid and run a db_query on the url_alias table to see if current node qualifies.

<?php
$nid = $node->nid;
$result = db_query('SELECT alias FROM {url_alias} WHERE source = :source,
  array(':source' => 'node/'.$nid));
foreach ($result as $r) {
  $alias = $r->alias;
}
if (strpos($alias, 'events')) {
  ?> <input... or <button...

Have your register button redirect to events/register/$node->title page and make sure you pass the node. There's a few different ways to go from here. If you have questions about this part open another thread.

0
toegevoegd
Bedankt voor de info, maar ik heb de knop al geplaatst. Waar ik echt hulp bij nodig heb, is hoe je een registratiepagina voor elk evenement kunt maken. Met andere woorden, ik moet twee pagina's maken die verschillende sjablonen gebruiken en verschillende aliassen hebben maar op hetzelfde knooppunt wijzen (zoals de titel van dit bericht aangeeft). Bedankt.
toegevoegd de auteur jordanbtucker, de bron

Je kunt de inschrijfmodule uitproberen. Het is nog in ontwikkeling, maar meer dan 7000 sites gebruiken het:

0
toegevoegd
Ik geef de voorkeur aan een meer generieke oplossing voor dit probleem, zodat we meerdere pagina's per knoop kunnen maken voor dingen die niet kunnen worden geregistreerd. Maar als dit werkt, verander ik de titel en markeer dit als het antwoord. Bedankt.
toegevoegd de auteur jordanbtucker, de bron