JavaScriptとCSSの順番を変える
基本はJavaScript→CSSの順になっている。
たまに、表示が崩れる場合があって、どうしても順番を変えたい時がある。
HTMLに追加しているのはsfCommonFilterで行われている。
<?php // (symfony_lib_dir)/filter/sfCommonFilter.class.php public function execute($filterChain) { // execute next filter $filterChain->execute(); // execute this filter only once $response = $this->getContext()->getResponse(); // include javascripts and stylesheets $content = $response->getContent(); if (false !== ($pos = strpos($content, '</head>'))) { sfLoader::loadHelpers(array('Tag', 'Asset')); $html = ''; if (!$response->getParameter('javascripts_included', false, 'symfony/view/asset')) { $html .= get_javascripts($response); } if (!$response->getParameter('stylesheets_included', false, 'symfony/view/asset')) { $html .= get_stylesheets($response); } if ($html) { $response->setContent(substr($content, 0, $pos).$html.substr($content, $pos)); } } $response->setParameter('javascripts_included', false, 'symfony/view/asset'); $response->setParameter('stylesheets_included', false, 'symfony/view/asset'); }
これのJavaScriptとCSSの順番を入れ変えたfilterを用意して、
apps/myapp/config/filters.ymlの
common: ~
のところを変える。