All Projects → fkrauthan → FkrCssURLRewriteBundle

fkrauthan / FkrCssURLRewriteBundle

Licence: other
A small assetic filter for symfony to fix all url paths at css documents to correct urls

Programming Languages

PHP
23972 projects - #3 most used programming language

Projects that are alternatives of or similar to FkrCssURLRewriteBundle

breadcrumb-bundle
Symfony bundle for easy breadcrumbs management
Stars: ✭ 26 (-21.21%)
Mutual labels:  bundle, symfony-bundle
LiipImagineSerializationBundle
Provides integration between LiipImagineBundle and JMSSerializerBundle
Stars: ✭ 24 (-27.27%)
Mutual labels:  bundle, symfony-bundle
stampie-bundle
stampie.github.io/
Stars: ✭ 26 (-21.21%)
Mutual labels:  bundle, symfony-bundle
awsBundle
Symfony AWS Bundle (supports Symfony 2, 3 and 4)
Stars: ✭ 18 (-45.45%)
Mutual labels:  bundle, symfony-bundle
socketio
No description or website provided.
Stars: ✭ 23 (-30.3%)
Mutual labels:  bundle, symfony-bundle
SlackBundle
SlackBundle for Symfony2 with Guzzle-Integration
Stars: ✭ 39 (+18.18%)
Mutual labels:  bundle, symfony-bundle
LiipSoapRecorderBundle
[DEPRECATED] Recorder/Player for SOAP communications
Stars: ✭ 12 (-63.64%)
Mutual labels:  bundle, symfony-bundle
SonataTimelineBundle
[Abandoned] Integrates SpyTimelineBundle into Sonata
Stars: ✭ 24 (-27.27%)
Mutual labels:  bundle, symfony-bundle
connect-bundle
No description or website provided.
Stars: ✭ 35 (+6.06%)
Mutual labels:  bundle, symfony-bundle
hashed-asset-bundle
Apply an asset version based on a hash of the asset for symfony/asset
Stars: ✭ 24 (-27.27%)
Mutual labels:  bundle, symfony-bundle
OpcacheBundle
Displays the PHP OPcache status in the Symfony profiler toolbar.
Stars: ✭ 21 (-36.36%)
Mutual labels:  bundle, symfony-bundle
wordpress-bundle
Use Wordpress and Symfony together using a Symfony bundle
Stars: ✭ 30 (-9.09%)
Mutual labels:  bundle, symfony-bundle
LiipSearchBundle
[DEPRECATED] Google XML API for searching is discontinued
Stars: ✭ 35 (+6.06%)
Mutual labels:  bundle, symfony-bundle
SonataDashboardBundle
[Abandoned] Provides a Dashboard management through container and block services
Stars: ✭ 17 (-48.48%)
Mutual labels:  bundle, symfony-bundle
SensioBuzzBundle
No description or website provided.
Stars: ✭ 89 (+169.7%)
Mutual labels:  bundle, symfony-bundle
SonataDoctrineMongoDBAdminBundle
Symfony Sonata / Integrate Doctrine MongoDB ODM into the SonataAdminBundle
Stars: ✭ 64 (+93.94%)
Mutual labels:  bundle, symfony-bundle
Lexikmaintenancebundle
This Symfony2 bundle allows you to place your website in maintenance mode by calling two commands in your console. A page with status code 503 appears to users, it is possible to authorize certain ips addresses stored in your configuration.
Stars: ✭ 253 (+666.67%)
Mutual labels:  bundle, symfony-bundle
gulp-rev-versions-bundle
A bundle that allows symfony to get the version of assets versioned with gulp-rev
Stars: ✭ 13 (-60.61%)
Mutual labels:  bundle, symfony-bundle
jsonrpc-bundle
JSON-RPC server for Symfony: exposes services registered in the service container as JSON-RPC-webservices
Stars: ✭ 31 (-6.06%)
Mutual labels:  bundle, symfony-bundle
NucleosDompdfBundle
📜 This bundle provides a wrapper for using dompdf inside symfony.
Stars: ✭ 29 (-12.12%)
Mutual labels:  bundle, symfony-bundle

FkrCssURLRewriteBundle

A small assetic filter for Symfony2 to fix all url paths in css documents to correct urls. It also provides easy resource linking across platforms.

Installation

Bring in the vendor libraries

This can be done in three different ways:

Method #1) Use composer

"require": {
    "fkr/cssurlrewrite-bundle": "*"
}

Method #2) Use git submodules

git submodule add git://github.com/fkrauthan/FkrCssURLRewriteBundle.git vendor/bundles/Fkr/CssURLRewriteBundle

Method #3) Use deps file

[FkrCssURLRewriteBundle]
    git=git://github.com/fkrauthan/FkrCssURLRewriteBundle.git
	target=bundles/Fkr/CssURLRewriteBundle

Register the Fkr namespaces

If not using composer, register the Fkr namespace with Symfony's autoloader:

// app/autoload.php
$loader->registerNamespaces(array(
    'Fkr' => __DIR__.'/../vendor/bundles',
    // your other namespaces
));

Add CssURLRewriteBundle to your application kernel

// app/AppKernel.php
public function registerBundles()
{
    return array(
        // ...
        new Fkr\CssURLRewriteBundle\FkrCssURLRewriteBundle(),
        // ...
    );
}

Configuration

# app/config.yml
fkr_css_url_rewrite:
    rewrite_only_if_file_exists: true
    clear_urls: true
  • rewrite_only_if_file_exists: If true (default) only rewrites url if the resource exists in the .../BundleFolder/Resources/public/ folder.
  • clear_urls: If true (default) the generated url gets normalized. For example if the url normaly is .../less/../img this option makes .../img.

Usage

Standard usage

If you place your css file for example in

.../BundleFolder/Resources/public/css 

and you have your images in

../BundleFolder/Resources/public/img

then you have in yours css file somthing like this

background-image: url(../img/MyImageName.png)

Now you have to call

app/console assets:install

Now if you have somthing like this in your template

{% stylesheets filter='css_url_rewrite,?yui_css' 
	'@BundleName/Resources/public/css/mycssfile.css'
%}
	<link rel="stylesheet" href="{{ asset_url }}" type="text/css" />
{% endstylesheets %}

Now the filter rewrites your url in your css file

background-image: url(../img/MyImageName.png) => background-image: url(../bundles/bundlename/css/../img/MyImageName.png)

And everything works fine.

Extended usage

You can link images from other bundles by using the @ annotation. For example if you write this in you css file

background-image: url(@BundleNameBundle/img/MyImageName.png)

Now the filter rewrite this url in your css file

background-image: url(@BundleNameBundle/img/MyImageName.png) => background-image: url(../bundles/bundlename/img/MyImageName.png)

License

Resources/meta/LICENSE

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].