2017 © Pedro Peláez
 

symfony-bundle canonical-url-bundle

Canonical URL Symfony bundle

image

palmtree/canonical-url-bundle

Canonical URL Symfony bundle

  • Sunday, June 25, 2017
  • by palmtree
  • Repository
  • 1 Watchers
  • 0 Stars
  • 47 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 15 Versions
  • 34 % Grown

The README.md

Canonical Url Bundle

License Travis Scrutinizer Scrutinizer Coverage, (*1)

The CanonicalUrlBundle is a Symfony bundle to redirect requests from multiple URLs for the same resource to a single canonical URL., (*2)

For example, if you had a resource named /about-us for your site example.org it could potentially be accessed with:, (*3)

http://example.org/about-us
http://example.org/about-us/
http://www.example.org/about-us
http://www.example.org/about-us/
https://example.org/about-us
https://example.org/about-us/
https://www.example.org/about-us
https://www.example.org/about-us/

When a user requests the resource with any of the above URLs, CanonicalUrlBundle will build a canonical URL based on a predefined site URL and will perform an HTTP redirect to it if the request URL does not match., (*4)

The bundle can also add a <link rel="canonical"> tag to your twig templates, see the Usage section for how., (*5)

Installation

Step 1: Download the Bundle

Open a command console, enter your project directory and execute the following command to download the latest stable version of this bundle:, (*6)

composer require palmtree/canonical-url-bundle

This command requires you to have Composer installed globally, as explained in the installation chapter of the Composer documentation., (*7)

Step 2: Enable the Bundle

Then, enable the bundle by adding it to the list of registered bundles in the app/AppKernel.php file of your project:, (*8)

<?php
// app/AppKernel.php

// ...
class AppKernel extends Kernel
{
    public function registerBundles()
    {
        $bundles = array(
            // ...

            new Palmtree\CanonicalUrlBundle\PalmtreeCanonicalUrlBundle(),
        );

        // ...
    }

    // ...
}

Step 3: Configure the Bundle

Add your configuration for the bundle to app/config/config.yml:, (*9)

palmtree_canonical_url:
    site_url:       'https://example.org' # replace with your full site URL (without trailing slash)
    redirect:       true # Set to false disable redirects if you just want to use the canonical link tag
    redirect_code:  301 # Leave this at 301 for SEO
    trailing_slash: false # Set to true if your routes and canonical URLs contain a trailing slash

Usage

To add a <link rel="canonical"> tag to your pages include the following code in the <head> of a twig tempalte:, (*10)

{{ palmtree_canonical_link_tag() }}

The href attribute will default to the canonical URL for the current request, but this can be overidden:, (*11)

{{ palmtree_canonical_link_tag('http://example.org/my-custom-link') }}

License

This bundle is released under the MIT license, (*12)

The Versions