Skip to content

Instantly share code, notes, and snippets.

@Haraldson
Created February 7, 2012 13:42
Show Gist options
  • Save Haraldson/1759726 to your computer and use it in GitHub Desktop.
Save Haraldson/1759726 to your computer and use it in GitHub Desktop.
Language switcher
{def
$currentlanguage = ezini('RegionalSettings', 'ContentObjectLocale', 'site.ini')
$istranslated = false()
$tolanguagename = ''
$tositeaccesscode = ''
$tourlalias = ''
}
{if $currentlanguage|compare('eng-GB')}
{set
$istranslated = cond($node.object.available_languages|contains('nor-NO'), true(), false())
$tolanguagename = 'Norsk'
$tositeaccesscode = 'no'
$tourlalias = fetch('switchlanguage', 'url_alias', hash(
'node_id', $node.node_id,
'locale', 'nor-NO'
))
}
{else}
{set
$istranslated = cond($node.object.available_languages|contains('eng-GB'), true(), false())
$tolanguagename = 'English'
$tositeaccesscode = 'en'
$tourlalias = fetch('switchlanguage', 'url_alias', hash(
'node_id', $node.node_id,
'locale', 'eng-GB'
))
}
{/if}
....
<a href={concat('/switchlanguage/to/', $tositeaccesscode, '/', cond($istranslated, $tourlalias))|ezurl()}>{$tolanguagename}</a>
ENGLISH SITEACCESS SITE.INI.APPEND.PHP
<?php /* #?ini charset="utf-8"?
[DesignSettings]
SiteDesign=<censored>
AdditionalSiteDesignList[]
AdditionalSiteDesignList[]=<censored>-ezcore
AdditionalSiteDesignList[]=ezflow
AdditionalSiteDesignList[]=ezwebin
AdditionalSiteDesignList[]=base
AdditionalSiteDesignList[]=standard
[SiteAccessSettings]
CheckValidity=false
MatchOrder=uri
RequireUserLogin=false
RelatedSiteAccessList[]
RelatedSiteAccessList[]=no
ShowHiddenNodes=false
[RegionalSettings]
Locale=eng-EN
ContentObjectLocale=eng-EN
ShowUntranslatedObjects=disabled
SiteLanguageList[]
SiteLanguageList[]=eng-EN
*/ ?>
NORWEGIAN SITEACCESS SITE.INI.APPEND.PHP
<?php /* #?ini charset="utf-8"?
[DesignSettings]
SiteDesign=<censored>
AdditionalSiteDesignList[]
AdditionalSiteDesignList[]=<censored>-ezcore
AdditionalSiteDesignList[]=ezflow
AdditionalSiteDesignList[]=ezwebin
AdditionalSiteDesignList[]=base
AdditionalSiteDesignList[]=standard
[SiteAccessSettings]
CheckValidity=false
MatchOrder=uri
RequireUserLogin=false
RelatedSiteAccessList[]
RelatedSiteAccessList[]=en
ShowHiddenNodes=false
[RegionalSettings]
Locale=nor-NO
ContentObjectLocale=nor-NO
ShowUntranslatedObjects=disabled
SiteLanguageList[]
SiteLanguageList[]=nor-NO
TextTranslation=enabled
TranslationExtensions[]=<censored>
*/ ?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment