Hello,
I’m struggling with categoris translations with checkbox…
I’m following out this multilanguage-secrets ,
I’ve created a structure like this:
fields:
category:
label: Category
type: select
options:
design:
en: Design
es: Diseño
travel:
en: Tourism
es: Turismo
Beauty:
en: Beauty
es: Bellezza
But seems that is not working, also by getting value with
<?= l($page->category()->value()); ?>
I don’t know what is wrong!
thanks a lot for any suggestions
Those blueprint translations only have an effect in the Panel, not for the frontend.
Using the l()
method is the right way in a multi-language installation, but requires that you define your translation as language variable in your language files: https://getkirby.com/docs/languages/variables , e.g.
# es.yml
design: Diseño
travel: Turismo
beauty: Belleza
#it.yml
design: Design
travel: Turismo
beauty: Bellezza
Once you’ve done that, you can call your translations like this:
<?= l($page->category()->value()) ?>
1 Like
Thanks @texnixe ,
I’ve tried your solution within no success
I was struggled a while, but finally I 've found a way… reading this ur suggestion :
is-there-an-easy-way-to-get-the-label-of-checkboxes
In particular in my /site/languages/en.php I’ve set:
l::set('category.sport', 'Sport');
l::set('category.web', 'Web');
l::set('category.chess', 'Chess');
in article blueprint:
category:
label: Category
type: checkboxes
options:
sport:
en: Sport
it: Sport
web:
en: Web
it: Web
chess:
en: Chess
it: Scacchi
and then in my template/snippet:
$cats = $article->category()->split();
$arraycats = $cats;
foreach ( $arraycats as $category ) {
echo l::get('category.' . $category);
}
it works perfectly! Thanks for ur help!
I’m just missing something for translate “category” labels in panel… but I think is only a detail
I don’t know why you had to go for the solution with individual l::set()
lines, since Kirby 2.4.0 the yaml version should work. But at least it works now.
Note that the translations in your blueprint do depend on the user language, the language doesn’t change, however, when you use the language switcher in the upper right.
1 Like
Because the other solution it didn’t work for me…
I’ve tried to set up blueprint like in ur suggestion:
#it.yml
design: Design
travel: Turismo
beauty: Bellezza
l::set( array(
'readmore' => 'Continua..',
'previous' => 'Previous',
));
also tried with variables inside array:
#it.yml
l::set( array(
'readmore' => 'Continua..',
'previous' => 'Previous',
'design' => 'Design',
'travel' => 'Turismo',
'beauty' => 'Bellezza',
));
with no success, I didn’t know what was wrong in my code…
maybe… probably… I didn’t understand the difference in printing values between :
<?= l($page->category()->value()) ?>
and
<?php l($page->category()->value()) ?>
kitzunegari:
#it .yml l::set( array( ‘readmore’ => ‘Continua…’, ‘previous’ => ‘Previous’, ‘design’ => ‘Design’, ‘travel’ => ‘Turismo’, ‘beauty’ => ‘Bellezza’, ));
l::set goes into a .php file, the example I used is a .yml
file. You can’t mix these things.
Damn!
Thanks @texnixe now I mean! I made a big mistake…
I’ll try just when i’ll finish to set up my blog with blueprint plugin