Download the PHP package khepin/drupal-transliterator-bundle without Composer
On this page you can find all versions of the php package khepin/drupal-transliterator-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download khepin/drupal-transliterator-bundle
More information about khepin/drupal-transliterator-bundle
Files in khepin/drupal-transliterator-bundle
Package drupal-transliterator-bundle
Short Description Symfony bundle to use drupal transliteration (eg in doctrine sluggable extension).
License GPLv2
Homepage https://github.com/khepin/KhepinDrupalTransliteratorBundle
Informations about the package drupal-transliterator-bundle
This bundle provides a better transliterator than the one included in Doctrine
Extensions. This is useful for the Sluggable
behavior if you are using a non
alphabetic based language. The one bundled in Doctrine extensions works fine
for many languages but I found limitations with Chinese at least. Drupal provides
a more advanced one.
Transliteration is the process of changing text from 北京
to Bei Jing
. So that
it can be url formatted afterwards.
Installation
Through the deps files add:
[KhepinDrupalTransliteratorBundle]
git=https://github.com/khepin/KhepinDrupalTransliteratorBundle.git
target=/bundles/Khepin/DrupalTransliteratorBundle
Run your vendor script ./bin/vendors install
.
In your autoload.php
register the Khepin namespace:
$loader->registerNamespaces(array(
// ...
'Khepin' => __DIR__.'/../vendor/bundles',
// ...
));
There is no real need to register the bundle as all it provides is a class with static methods to transliterate strings. Having it autoloaded is enough.
Usage
The bundle provides a Transliterator class with two methods:
- One to just transliterate the text:
Khepin\DrupalTransliteratorBundle\Transliterator::transliterate
- One that is compatible directly with the declaration in doctrine extensions
Khepin\DrupalTransliteratorBundle\Transliterator::sluggableTransliterate
The bundle also overrides the standard Doctrine Extensions Sluggable listener so that it uses this transliteration method rather than the standard one. In order to use it, change your DoctrineExtensionBundle to use the new listener:
stof_doctrine_extensions:
class:
sluggable: Khepin\DrupalTransliteratorBundle\Listener\SluggableListener
mongodb:
default:
sluggable: true
# or
orm:
default:
sluggable: true