Integration with Internationalization and other contributed modules

Here are some notes about integration with other contributed modules. This is about configuration and integration with other modules to use Internationalization features, but not about compatibility problems. If you have any issue about compatibility with other modules, please file a feature request on the issue tracker.

CCK

The Synchronization module works also for CCK fields.
There's no support (yet) for translating single fields into different languages.

Context

The i18n blocks module is not compatible with Context. It won't break your site but just one of the modules will be able to handle the block selection. Change module weights so the one running later is the one handling the blocks.

Pathauto

AFAIK, the Pathauto module plays nice with Internationalization module. In addition to that, there are some features added into Internationalization module to provide different path templates for nodes depending on language.

Note: this won't work for bulk pathauto operations:

  1. Add pathauto variables to language-dependent variables in settings file, like:

  2. $conf['i18n_variables'] = array(
    ..............

Having a "Please log in to flag" link

When anonymous users --or otherwise unprivileged users-- visit your site they don't see the flag link. For these users you may wish to show a "Please log in" link instead.

But first: if you don't know PHP...

If you don't know PHP you have two options:

  1. Use the Flag Anonymous module.
  2. Use the the Custom Links module. Here's a "tips and tricks" page for that module.

(Note: The rest of this page is a bit old. Probably more of the suggestions here could be replaced by contrib modules nowadays.)

Showing the link under the node

To show a link under a node we need to implement hook_link in a custom module. We'll assume the name of this module is "mymodule".

(This code works for both Drupal 6 and Drupal 5.)

<?php function mymodule_link($type, $node) {
global $user;
if ($type == 'node') {
if (!$user->uid) {
$flag = flag_get_flag('bookmarks') or die('no "bookmarks" flag defined');
if ($flag->applies_to_content_object($node)) {
return array(
'flag-anon' => array(
'title' => t('Log in to bookmark'),
'href' => 'user/login',

Pages

Subscribe with RSS Subscribe to RSS - contribute module