У меня есть эта навигация с такими ссылками:
href="http://mamgrow.lt/veikla.php#konkursai"
Таким образом, он открывает страницу с элементом с id='konkursai'
сосредоточенный.
Как я могу сделать это в Symfony?
Мои страницы создаются как действия, а ссылки на них описаны в routing.yml.
MainController:
public function aboutUsAction() {
return $this->render('MamgrowMainBundle:Main:about-us.html.twig');
}
public function activitiesAction() {
return $this->render('MamgrowMainBundle:Main:activities.html.twig');
}
public function contactsAction() {
return $this->render('MamgrowMainBundle:Main:contacts.html.twig');
}
routing.yml:
about-us:
path: /apie-mus
defaults: { _controller: MamgrowMainBundle:Main:aboutUs }
contacts:
path: /kontaktai
defaults: { _controller: MamgrowMainBundle:Main:contacts }
activities:
path: /veikla
defaults: { _controller: MamgrowMainBundle:Main:activities }
Просто добавьте часть хеша к сгенерированному пути / URL:
<a href="{{ path('contacts') }}#some-anchor">Contact Us</a>
Эти решения могут помочь вам для статических страниц:
static-page:
path: /website/{page}
defaults: { _controller: MamgrowMainBundle:Main:static }
public function staticAction($page) {
return $this->render('MamgrowMainBundle:Main:'.$page.'.html.twig'');
}
TwigView.html.twig
<a href="{{ path('static-page', {"page": "contact-us"} ) }}">Contact Us</a>
<a href="{{ path('static-page', {"page": "about-us "} ) }}">AboutUs </a>
var «page» должен быть назван точно так же, как ваши представления для метода staticAction работает отлично !!!