1. Приветствуем Вас на неофициальном форуме технической поддержки XenForo на русском языке. XenForo - коммерческий форумный движок от бывших создателей vBulletin, написанный на PHP.

Картинка новости в XenPorta

Тема в разделе "Вопросы по стилям, изменения в CSS и шаблонах", создана пользователем KolobOKs, 19.06.2011.

Загрузка
  1. KolobOKs

    KolobOKs Активный пользователь

    Регистрация:
    12.12.10
    Сообщения:
    25
    Симпатии:
    2
    Версия XF:
    1.1.0 Final
    Всем доброго времени суток.
    Пытаюсь сделать следующее:
    На моем портале с помощью XenPorta выводятся новости из трех разделов на форуме. Справа от новости показывается картинка из аттача темы, если таковой нету - аватар топик стартера. Пытаюсь заменить эту картинку на изображение раздела, т.е. чтобы эта картинка зависела от того в каком разделе эта тема находится. (простыми словами 3 раздела: мотоциклы, автомобили, самокаты. Если создается новость в разделе автомобили отображается картинка auto.gif, а не аттач и не аватар, если тема из раздела мотоциклов, то moto.jpg. Ну думаю вы меня поняли)

    Ниже привел код, который отвечает за данную картинку
    PHP:
                    <div class="messageUserBlock">
                        <
    div class="avatarHolder">
                            <
    xen:if is="{$news.attach}">
                                <
    a href="{xen:link threads, $news}"><img src="{$news.attach.thumbnailUrl}alt="{$news.attach.filename}/></a>
                            <
    xen:elseif is="{$news.medio}/>
                                <
    div style="background: url('data/media/{$news.medio.media_id}.jpg') no-repeat;">
                                    <
    a href="{xen:link 'full:media/popout', $news.medio}" class="OverlayTrigger"><img src="js/8wayrun/EWRmedio_play.png" width="160" height="90" alt="" /></a>
                                </
    div>
                            <
    xen:elseif is="{$news.image}/>
                                <
    a href="{xen:link threads, $news}"><img src="{$news.image}alt="{$news.image}style="max-height: 150px; max-width: 150px;" /></a>
                            <
    xen:else />
                                <
    xen:avatar user="$newssize="m" itemprop="photo" />
                            </
    xen:if>
                        </
    div>
                    </
    div>
    Код, на который я пытаюсь заменить

    PHP:
    <div class="messageUserBlock">
      <
    div class="avatarHolder">
        <
    xen:if ###########=65>
          
    <a href="{xen:link threads, $news}"><img src="65.gif" alt="" /></a>
        </
    xen:if>
      </
    div>
    </
    div>
    Не знаю что поставить на месте #####. Там должна стоять переменная раздела форума, в которой находится данная тема.
    Буду благодарен за подсказку.
    Спасибо!
     
  2. Mr. Brightside

    Mr. Brightside Read only

    Регистрация:
    17.02.11
    Сообщения:
    156
    Симпатии:
    58
    Как я решал бы эту проблему.

    Называешь картинку как ID раздела, иными словами в твоем случае "65.gif", и у тебя получается:

    HTML:
    <div class="messageUserBlock">
      <div class="avatarHolder">
        <a href="{xen:link threads, $news}"><img src="{$news.node_id}.gif" alt="" /></a>
      </div>
    </div>
     
    Curaudo, Romchik® и KolobOKs нравится это.
  3. KolobOKs

    KolobOKs Активный пользователь

    Регистрация:
    12.12.10
    Сообщения:
    25
    Симпатии:
    2
    Версия XF:
    1.1.0 Final
    Спасибо огромное!
    PHP:
    $news.node_id
    Это то, что мне нужно!
     
  4. KolobOKs

    KolobOKs Активный пользователь

    Регистрация:
    12.12.10
    Сообщения:
    25
    Симпатии:
    2
    Версия XF:
    1.1.0 Final
    А как синтаксически правильно написать условие

    PHP:
    <xen:if '{$news.node_id} == "10" '>

    #######

    </xen:if>
    Пишет синтаксическая ошибка
     
  5. Romchik®

    Romchik® The Power of Dreams Команда форума

    Регистрация:
    26.09.10
    Сообщения:
    5 746
    Симпатии:
    5 311
    Версия XF:
    1.5.18
    Может как-то так:
    PHP:
    <xen:if is="{$news.node_id} == '10'">
    или так
    PHP:
    <xen:if is="{$news.node_id} == 10">
    и еще вариант
    PHP:
    <xen:if is="{$news.node_id10}">
     
    Curaudo, Herurg и KolobOKs нравится это.
  6. KolobOKs

    KolobOKs Активный пользователь

    Регистрация:
    12.12.10
    Сообщения:
    25
    Симпатии:
    2
    Версия XF:
    1.1.0 Final
    Большое спасибо!
     
  7. Romchik®

    Romchik® The Power of Dreams Команда форума

    Регистрация:
    26.09.10
    Сообщения:
    5 746
    Симпатии:
    5 311
    Версия XF:
    1.5.18
    Да не за что. Только может напишите, какой вариант то хоть сработал? :) Самому интересно, да и может еще кому пригодится.
     
  8. KolobOKs

    KolobOKs Активный пользователь

    Регистрация:
    12.12.10
    Сообщения:
    25
    Симпатии:
    2
    Версия XF:
    1.1.0 Final
    Конечно! Сработал первый вариант! Что из этого всего получилось, можно посмотреть тут: http://ectorus.ru
     
    Curaudo и Romchik® нравится это.

Поделиться этой страницей