Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
Airat
@codev0
подскажите плз, пытаюсь дернуть картинку в style="background-image: url('<?php print file_create_url($n['uri']); ?>')"
$n = $node->field_front_page_image[LANGUAGE_NONE][0];
$image_style = 'front_page_slider';
$classes = array('thumb');
$img = theme(
  'image_style', array(
    'style_name' => $image_style,
    'path' => $n['uri'],
    'alt' => $node->title,
    'title' => $node->title,
    'getsize' => TRUE,
    'attributes' => array('class' => $classes)
  )
);
но вижу нотиц Notice: Undefined index: und in include() (line 84 of path/sites/all/themes/invest/templates/nodes/node--front-page-slider.tpl.php).
как я понял проблема в $n = $node->field_front_page_image[LANGUAGE_NONE][0];
сайт мультиязычный
Anton Karpov
@awd-studio
LANGUAGE_NONE это константа, в ней 'und'
'und' - означает что контент непереводимый
нужно вместо LANGUAGE_NONE - langcode поля
Airat
@codev0
ммм, а есть переменная?
Anton Karpov
@awd-studio
:smile: есть, много... какая нужна?
скорее всего циклом получать имеющиеся и из них выбирать нужную
(по langcode)
Airat
@codev0
:D
Anton Karpov
@awd-studio
посмотри девелом структуру поля, и оттуда пляши уже
Airat
@codev0
что сложно, хочу сунуть картинку в фон, а такие трудности
Anton Karpov
@awd-studio
ну... такая вот плата за мультиязычность. да и не особо сложно. в крайнем случае - можно отключить мультиязычность у поля, тогда код заработает
Airat
@codev0
<?php print image_style_url('front_page_slider', $node->field_front_page_image['und'][0]['uri']); ?>
вот так вроде норм
@awd-studio спасибо!
KarmaBot
@KarmaBot
Спасибо (+1) для @awd-studio принято! Текущая карма +117.
Airat
@codev0
а мультиязычность прогер потом допилит
:)
Anton Karpov
@awd-studio
;)
boolboost
@boolboost
)
Или пользуйтесь emw, он сам подставляет язык
Airat
@codev0
emw?
Anton Karpov
@awd-studio
только если у поля будет перевод в текущем языке
boolboost
@boolboost
Если не будет есть возможность выбрать любой язык
Это уже частный случий в общем
У меня по крайней мере не было такой проблемы на мультиязычном сайте
Обычно перевод есть
Airat
@codev0
прикольно
да не факт что перевод будет
слайдер
boolboost
@boolboost
Ну можно будет сказать
Не отображается потому что вы перевод не заполнели
Что нормально
Airat
@codev0
интересно что kpr($language); пусто
boolboost
@boolboost
А global не забыли
Airat
@codev0
для emw нужено что то ставить?
Anton Karpov
@awd-studio
entity API
boolboost
@boolboost
Вроде entity только
Не помню есть ли он в ядре
Вроде есть
Airat
@codev0
$node->field_front_page_image[$language->language][0]['uri’] :) я что то не так делаю?
boolboost
@boolboost
Да вроде так правильно
Airat
@codev0
Notice: Trying to get property of non-object in include() (line 85 of path/sites/all/themes/invest/templates/nodes/node--front-page-slider.tpl.php).
boolboost
@boolboost
Просто с emw лаконичнее