Смена header в зависимости от времени - знатокам php

Автор Beer, 25 ноября 2011, 22:49:31

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Beer

В index.template.php
<div id="header"> менять бы на другой класс например <div id="header2">

В Joomla! это делает такая строка кода:
<div id="<?php if (date("G") >= '0' && date("G") < '8') { echo 'header2'; } else { echo 'header';} ?>">

Тут как-то визуально без серого вещества не получается....
Кто силен в php - поправьте плиз, люди добрые как надо!

GeorG

В этой теме - http://custom.simplemachines.org/themes/index.php?lemma=2515 реализовано, посмотрите код, и сделайте так же.

Вот код который это делает там:
<div class="inframe">' ,
!empty($settings['own_banner']) ? !empty($settings['banner_link']) ? '<a href="' . $settings['banner_link'] . '"><img src="' . $settings['own_banner'] . '" alt="" style="height:190px; width:560px"/></a>' : '<img src="' . $settings['own_banner'] . '" alt="" style="height:190px; width:560px"/>' : '<div style="width:560px; height:190px; background:url(' . $settings['images_url'] . '/theme/header/' . mt_rand(0,5) . '.jpg)"> </div>' , '
</div> <!--inframe-->


Файл index.template.php
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

Beer

Спасибо! Но вот я что-то не вижу условия (времени) для смены хедера, либо моих познаний не зватает...

GeorG

Меняются рандомно картинки с именами 1.jpg, 2.jpg ... 5.jpg находящиеся по адресу ../Themes/{ваша тема}/images/theme/header/
<div style="width:560px; height:190px; background:url(' . $settings['images_url'] . '/theme/header/' . mt_rand(0,5) . '.jpg)"> </div>

Пять цифр, рандомно выбирается с помощью - ' . mt_rand(0,5) . '

Цитата: Beer от 26 ноября 2011, 00:09:49условия (времени) для смены хедера
Меняется при обновлении страницы, у вас изначально, такого условия (времени) не стояло вообще.
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

Макар

Цитата: GeorG от 26 ноября 2011, 00:23:20изначально, такого условия (времени) не стояло вообще
оно в названии темы  :facepalm:
Если Вы здесь недавно, не обольщайтесь тоном некоторых дискуссий.
Все чаще слова - юзай поиск, приобретают смысл - иди в ж..........  Приобретение смысла автоматизированно - Ответы на любой вопрос по SMF
Не пишите несколько сообщений подряд - тут вам не Twitter  >:( в остальных ситуациях мы не сильно зверствуем 2funny

Beer

GeorG, ты - голова, впрочем Макар - тоже, значит - соображаем на троих!

Макар

ню
вместо mt_rand(0,5)  переписать и подставить  условие на основе

localtime()
или
getdate()

вытянуть из них значение часов  [hours] для getdate или [tm_hour] для localtime

и с ними уже работать




добавка

можно попробовать idate('H', $timestamp) вернет сразу время одно число - текущий час вычисленный из таймстампа
как пишет мануал $timestamp не обязателен...... вернет время сервера

хотя если сервер в америке, а вы в Тамбове, то будет прикольно............


Если Вы здесь недавно, не обольщайтесь тоном некоторых дискуссий.
Все чаще слова - юзай поиск, приобретают смысл - иди в ж..........  Приобретение смысла автоматизированно - Ответы на любой вопрос по SMF
Не пишите несколько сообщений подряд - тут вам не Twitter  >:( в остальных ситуациях мы не сильно зверствуем 2funny

GeorG

Цитата: Макар от 26 ноября 2011, 00:32:10оно в названии темы  :facepalm:
Упс... angel

А если просто так переписать:
echo '
    <div id="<', (date("G") >= '0' && date("G") < '8') ? 'header2' : 'header', '"></div>';

Разве работать не будет?
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

Beer

Так я пробовал перед созданием темы:
syntax error, unexpected T_STRING, expecting ',' or ';'

Оно даже в редакторе показывает, что как-то иначе надо...
Вот кусок кода:

function template_body_above()
{
global $context, $settings, $options, $scripturl, $txt, $modSettings;

echo !empty($settings['forum_width']) ? '
<div id="wrapper" style="width: ' . $settings['forum_width'] . '">' : '', '
echo '
    <div id="<', (date("G") >= '0' && date("G") < '8') ? 'header2' : 'header', '"></div>';
  <div class="frame">
<div id="top_section">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="250">
<h1 class="forumtitle">
<a href="', $scripturl, '">', empty($context['header_logo_url_html_safe']) ? $context['forum_name'] : '<img src="' . $context['header_logo_url_html_safe'] . '" alt="' . $context['forum_name'] . '" />', '</a>
</h1>
</td>
<td width="10">
&nbsp;
</td>
<td align="right">
<a href="../../index.php?option=com_content&view=article&id=50&Itemid=50" target="_blank">
<img src="/forum/images/468x60-travel-photo.gif" title="Лучшее слово - дело!" vspace="0" border="0"></a>
</td>
</tr>
</table>
';

GeorG

Цитата: Beer от 26 ноября 2011, 13:02:35Так я пробовал перед созданием темы:
syntax error, unexpected T_STRING, expecting ',' or ';'

Оно даже в редакторе показывает, что как-то иначе надо...
Ну если даже раз в редакторе показывает, то учите синтаксис php. Редактор зря показывать не будет.

Пробуйте так:
<div id="wrapper" style="width: ' . $settings['forum_width'] . '">' : '', '

    <div id="<', (date("G") >= '0' && date("G") < '8') ? 'header2' : 'header', '"></div>
  <div class="frame">
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

Beer

Точнее так:
<div id="', (date("G") >= '0' && date("G") < '8') ? 'header2' : 'header', '">

Сенкс GeorG!!!
+1

Drakonsa


Макар

Если Вы здесь недавно, не обольщайтесь тоном некоторых дискуссий.
Все чаще слова - юзай поиск, приобретают смысл - иди в ж..........  Приобретение смысла автоматизированно - Ответы на любой вопрос по SMF
Не пишите несколько сообщений подряд - тут вам не Twitter  >:( в остальных ситуациях мы не сильно зверствуем 2funny

Beer

 Братцы! Давайте не будем словоблудить друг перед другом, тем более вы все - СПЕЦЫ, и мне помогал из Вас каждый ранее, за что большое спасибо!
Если есть сомнения - выражайте их плиз как-то понятнее...