How to Customize Multi language on Multi domain in Typo3? - typo3

I have Four language enabled i.e German,french,Russian,Chinese and English is the default one.My site is in Two domain what i want to do is For Second Domain I dont want this all language Available Only During Content addition.Specific Language must be listed.

You can limit the languages a editor can use within a page tree by adding some PageTSConfig to the root page of the pageTree:
mod.SHARED {
# Change the Flag for default content (sys_langauge_uid=0)
defaultLanguageFlag = fr
# Change the Label for default content (sys_langauge_uid=0)
defaultLanguageLabel = Francaise
# Disable languages for editors
disableLanguages = 1,4
}

Related

Content element hidden in default language should be visible in translation

Small problem with translated content in TYPO3 8.7.13:
Translation in connected mode. In default language there is one element hidden which should be visible in translation. In the backend it looks like it would be visible but in the frontend the element is missing. (The other way round there is no problem: when the element in default language is visible i can always hide it in the translation.)
My language configuration:
[sys_language_mode] = content_fallback
[sys_language_overlay] = hideNonTranslated
Translation in connected mode (we use L10N-Manager)
Is there a possiblity to make the translated element visible in the foreign language even when the element in the default language is hidden?
Thanks!
I'm not sure if my informations are up to date, but when I had similar case in older TYPO3 versions there were no way to achieve that. The workaround which I've used was to change type type (CType) of content element to "Empty", which was custom content element prepared especially for such cases. It is possible also to change the type to "Plain HTML" and just leave the bodytext empty.

How to get the Log In Form on every page? (for example in footer) Typo3

Is there a way to get the Log In Form for Frontend User on every page? I would prefer the footer.
And if someone is logged in you can see the Log Out Button.
Is this possible without an extension?
You can copy the default felogin output to wherever you want on your template. For example use lib.login, copy the plugin.tx_felogin_pi1 into it, change the template and you're fine.
lib.login < plugin.tx_felogin_pi1
lib.login.templateFile = path/to/your/template/file
More you can see in the official documentation: https://docs.typo3.org/typo3cms/extensions/felogin/8.7/Configuration/Index.html
In general there are three options to include a CE (e.g. the Login-form) on all pages:
use typoscript to generate the CE. Normally the CEs are defined in tt_content, from where you could copy the base configuration and adapt it. For some plugins you also find a complete configuration beyond lib (for newer extensions there you only find the settings). All the configuration must be done in typoscript.
use typoscript to render the content of a special page/ column. In this variant you have a special page only for content referenced somewhere else. Advantage: you could configure the CE in the usual way. Try to avoid referencing CEs by uid as an editor might disable or delete the current element(s) and insert a new one which would not be rendered.
use a special column in your root page and inherit the content to all subpages. Advantage: you could change the inherited content easily on each page (if this column is available in the current backend layout).
example for 3:
variables {
footer_content < styles.content.get
footer_content.select.where = colPos = 15
footer_content.slide = -1
}

TYPO3 shariff extension language detection

I use TYPO3 6.2 and the Extension shariff. The default language of this extension is english, but the buttons are always translated to german. My website is multilingual (en, de). The Buttons are included via backend for both languages. How could I define the language per content element "Shariff Social Icons"?
Please clarify your question a bit. What do you mean by "language per record"?
The language is detected automatically from the language configured for the current page. So it automatically adjusts if the language is changed.
See also: https://docs.typo3.org/typo3cms/extensions/rx_shariff/Installation/Index.html#fluid-view-helper
If you need to set a language manually you can do that via the data-lang attribute.
You can add override for Shariff Index.html by copying typo3conf/ext/rx_shariff/Resources/Private/Templates/Shariff/Index.html to typo3conf/ext/YourExtension/Resources/Private/Templates/Shariff/Index.html (your extension / override template path)
And add following override to setup typo-script:
plugin.tx_rxshariff.view {
templateRootPaths{
2 = EXT:YourExtension/Resources/Private/Templates/
}
}
Add your modification to your overridden file (typo3conf/ext/YourExtension/Resources/Private/Templates/Shariff/Index.html).

typo3 extension two times on page, different setup?

I have written a Typo3 extension that I want to put 2 times on the same Typo3 page (actually in two parts defined through a templavoila template), but the two instances need different setups!
When I add content to the page through the "Page" module, I can add as many instances of my extension as I want. But in the "Template" module, there is only 1 configuration per page.
So my question is: what is the best way to have different typoscript setups for different instances of a single plugin on the same page?
Thanks for any hints!
If a configuration option is not available as flexform, or there are other reasons why to change the options via TypoScript, you may do it like this:
temp.tx_yourextension < plugin.tx_yourextension
plugin.tx_yourextension >
plugin.tx_yourextension = CASE
plugin.tx_yourextension {
# check for the uid of the content element (the plugin)
key.field = uid
# if nothing special is defined
default < temp.tx_yourextension
# the plugin with the uid 1234 needs different configuration
1234 < temp.tx_yourextension
1234 {
property = whatever
}
}
Instead of requesting the uid, you could check for section_frame or any other field.
But keep in mind, some extensions accessing directly the TypoScript via $GLOBALS['TSFE']->tmpl->setup['plugin.']['tx_yourextension.']['property'] which will prevent this option.
You could do the same on tt_content.list.*
# without tx_ prefix
temp.yourextension < tt_content.list.20.yourextension
tt_content.list.20.yourextension >
tt_content.list.20.yourextension = CASE
...
Why using template configuration? You could define some configurations for the frontend plugin itself (with flexforms), so every instance could be customized.
You can use the flexform to have different setups. Each flexform is stored in a separate database field.

TYPO3 tx_news more-link only showing default translation

In TYPO3 tx_news i have the more-link, but it only shows the default translation in every language.
My default language is Danish.
In items.html I have this:
<f:translate key="more-link"/>
In my TypoScript I have this
plugin.tx_news._LOCAL_LANG.de.more-link = mehr
plugin.tx_news._LOCAL_LANG.en.more-link = read more
plugin.tx_news._LOCAL_LANG.default.more-link = læs mere
I can also see these values in TypoScript Object Browser.
But on the English and the German page the link text is "læs mere".
What could be wrong?
Check your language settings in your setup TypoScript.
You should set for english:
config.language = en
and for german:
config.language = de
This configures the system “language key” to be used for the language.
This is used to select labels from XLF files. Setting this should make
frontend plugins respond by showing labels from the correct language
(requires installation of the corresponding translations).
Actually with the settings above you change in TypoScript the default values from a language file. As you see you are using there the de and en properties. This settings should be set correctly in your config also to enable TYPO3 to match them.
Documentation is here.