Pregunta

Tengo el CSS ubicado en

app/Resources/FOSUserbundle/css

¿Cómo puedo incluir eso en mi plantilla de ramita?

La razón por la que estoy poniendo CSS allí es que mis plantillas de fosuser anuladas en esa carpeta. Así que quiero mantener las imágenes CSS, JS, todo allí para que si necesito usar en otro sitio web solo copio esa carpeta

¿Fue útil?

Solución

No estoy muy seguro de cómo incluirías eso en tus plantillas de ramas, pero ...

1) Pongo los recursos que uso en varios paquetes / proyectos en la web / directorio. Entonces puedes hacer referencia a este tipo:

{% stylesheets 'css/styles.css' %}
<link href="{{ asset_url }}" type="text/css" rel="stylesheet" />
{% endstylesheets %}

2) Si necesita anular el FosuserBundle de todos modos, puede colocar los recursos dentro del paquete heredador, haciendo referencia a ellos así:

{% javascripts '@YourBundle/Resources/public/js/scripts.js' %}
<script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}

Otros consejos

Lo que has hecho es perfectamente bien.

Solo haz lo siguiente:-

$ app/console assets:install web

Instalará los activos en el directorio público "web", donde los activos deberían ser técnicamente, para ser utilizados con sus plantillas de ramita.

Los activos se pueden usar dentro de plantillas de ramas como esta:-

    {% block stylesheets %}
        <link href="{{ asset('/css/main.css') }}" type="text/css" rel="stylesheet" />
    {% endblock %}


    {% block javascripts %}
        <script src="{{ asset('/js/main.js') }}" type="text/javascript"></script>
    {% endblock %}

Aunque la pregunta sugiere y anula el caso, también es para un caso en el que los CSS o JS están en una carpeta común, lejos de la estructura del paquete.

Una respuesta es usar las variables de ramita disponibles. Por ejemplo, si tengo un archivo CSS ubicado aquí

app/Resources/views/clientSite/customFolder/css/mycss.css

Puedo cargar en cualquier plantilla usando algo como esto (tenga en cuenta que el ejemplo anula el bloque completo de hojas de estilo, pero no es necesario, la etiqueta de ramita de hoja de estilo se puede agregar en cualquier bloque):

{% block stylesheets %}
    {{ parent() }}
    {% stylesheets '%kernel.root_dir%/Resources/views/clientSite/customFolder/css/mycss.css'
    %}
    <link rel="stylesheet" type="text/css" href="{{ asset_url }}" />
    {% endstylesheets %} 
{% endblock %}

Recuerda también Ejecutar el comando Assetic: Dump, Entonces, Symfony sabe que tuvo que publicar el CSS en la carpeta Web/CSS con todos los demás archivos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top