Понедельников НЕТ!
Регистрация или вход Регистрация или вход Избранное на этом сайте | Главная | Анкета | Рекомендовать | Обратная связь | В избранное | Сделать домашней
Скачать SSDForums
Скачать SSDForums 1.0.1 Скачать SSDForums 1.0.1
Скачать SSDForums 1.0.1 SP1 Скачать SSDForums 1.0.1 SP1
Скачать SSDForums 1.0.1 SP2 Скачать SSDForums 1.0.1 SP2
SSD Forums 1.0.1 SP3 only Slaed 3.5 Pro SSD Forums 1.0.1 SP3 only Slaed 3.5 Pro
SSD Forums 1.0.1 SP4-beta only Slaed 4.1 Pro SSD Forums 1.0.1 SP4-beta only Slaed 4.1 Pro
Jewelry Сase Team
Скачать Ruby Chat 0.1.1 Скачать Ruby Chat 0.1.1
Меню
Главная
Форум
Магазин цифровых товаров

Новости
Подписка на новости
Темы новостей
Добавить новость

Каталог файлов
Карта файлового архива
Публикации

Опросы
Анкета пользователя
Чат

BestMaker
Викторина
Архив новостей
Карманный оракул
Поиск по сайту с помощью Яндекс
Поиск по сайту с помощью Google
Фото дня
Для души
Погода на 3 дня
IndexCat
IndexTop
Map_Pages
Поиск по сайту









Подписка на новости
Ваше имя:
Ваш E-Mail:*
Секретный код:
Секретный код
Повторить:*
Интересное в сети

Sape — это система купли-продажи ссылок
с главных и внутренних страниц сайтов
Форум -> Система оформления -> Переключение тем оформления
Переключение тем оформления
LepRiKonS Дата: 15.06.2008, в 22:44 | Сообщение №1
LepRiKonS
Пользователь
Пользователь №: 215
Сообщений: 39

Вопрос такой. Можно ли сделать автоматическое переключение тем? Т.Е. допустим через определенное количество дней.

У меня две темы оформления, разных цветов. Заказчик попросил сделать автоматическое переключение.
SHAKA1 Дата: 16.06.2008, в 14:08 | Сообщение №2
SHAKA1
Участник
Пользователь №: 323
Сообщений: 77

Кхм...ну попробуй так, по идее должно работать:

PHP - Код
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php
//-----------------------------------------------------------------------Настройки
//#############--1-вкл. смену 0-выкл смену темы
$offon='1';
//#############--Кол-во часов после которых тема смениться
$chas='2';
//#############--Путь до временного файла
$ftmp="cache/ntemp.php";
//############---Название тем, которые меняем
$nthemone="Тема№1";
$nthemtwo="Тема№2";
//-----------------------------------------------------------------------

$cachetime = 60*60*$chas;
if (
$offon=='1') {
if (
file_exists($ftmp)) $raz=mktime() - filemtime($ftmp);
else {
$fp = fopen($ftmp, "w");
$tmpcontent = "";
fwrite($fp, $tmpcontent);
fclose($fp);
}

if (
file_exists($ftmp) && $raz<=$cachetime) $ThemeSel=$nthemone;
else if (
file_exists($ftmp) && $raz<=$cachetime*2) $ThemeSel=$nthemtwo;
else {
$ThemeSel=$nthemtwo;
@
unlink($ftmp);
$fp = fopen($ftmp, "w");
$tmpcontent = "";
fwrite($fp, $tmpcontent);
fclose($fp);
}
}
?>


З.Ы
Т.к ты не указал версию системы, то я дал тебе пример как это можно сделать, а куда уж его вставлять думай сам....
LepRiKonS Дата: 17.06.2008, в 10:08 | Сообщение №3
LepRiKonS
Пользователь
Пользователь №: 215
Сообщений: 39

SHAKA1, извините :)
версия системы 2.3. куда код вставлять я не понял. =(

если не сложно, объясните пожалуйста что происходит в коде.
хочется разобраться во всем

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Отредактированно LepRiKonS 17.06.2008 г. в 10:09:46
SHAKA1 Дата: 18.06.2008, в 05:11 | Сообщение №4
SHAKA1
Участник
Пользователь №: 323
Сообщений: 77

Цитата
версия системы 2.3


1. Создаем в корне сайта папку cache (www.сайт.ru/cache), устанавливаем на нёё права 777

2. Открываем function/function.php ищем в нём функцию get_theme() и в неё, в самый конец, перед

return $ThemeSel;
}


вставляем:

PHP - Код
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?php
//-----------------------------------------------------------------------Настройки
//#############--1-вкл. смену 0-выкл смену темы
$offon='1';
//#############--1-вкл. смену 0-выкл смену темы для пользователей
$offonuser='1';
//#############--Кол-во часов после которых тема смениться
$chas='2';
//#############--Путь до временного файла
$ftmp="cache/ntemp.php";
//############---Название тем, которые меняем
$nthemone="Stability";
$nthemtwo="News";
//-----------------------------------------------------------------------Настройки
if (is_user($user) && $offonuser=='0') {
$utheme = $user[5];
if (
file_exists("templates/$utheme") && $utheme != "") $ThemeSel = $utheme;
else
$ThemeSel = $Default_Theme;
} else {
$cachetime = 60*60*$chas;
if (
$offon=='1') {
if (
file_exists($ftmp)) $raz=mktime() - filemtime($ftmp);
else {
$fp = fopen($ftmp, "w");
$tmpcontent = "";
fwrite($fp, $tmpcontent);
fclose($fp);
}
if (
file_exists("templates/$nthemone") && $nthemone != "" && file_exists($ftmp) && $raz<=$cachetime) $ThemeSel=$nthemone;
else if (
file_exists("templates/$nthemtwo") && $nthemtwo!= "" && file_exists($ftmp) && $raz<=$cachetime*2) $ThemeSel=$nthemtwo;
else {
$ThemeSel=$nthemone;
@
unlink($ftmp);
$fp = fopen($ftmp, "w");
$tmpcontent = "";
fwrite($fp, $tmpcontent);
fclose($fp);
}
}
}
?>


Цитата
что происходит в коде


в папке cache создаем файл, затем проверяем сколько часов назад он был создан, если со времени его создания прошло меньше часов чем мы задали ($cachetime), то тема у нас №1, если со времени его создания прошло меньше часов чем мы задали умноженое на два ($cachetime*2) то тема №2, иначе файл удаляем и повторяем всё сначала...вроде так...хотя возможно можно было бы сделать попроще...

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Отредактированно SHAKA1 18.06.2008 г. в 05:13:45
LepRiKonS Дата: 18.06.2008, в 07:49 | Сообщение №5
LepRiKonS
Пользователь
Пользователь №: 215
Сообщений: 39

SHAKA1, Спасибо! Код еще не пробовал, но хоть что-то понятно.
Вопрос такой, а зачекм:
Цитата
если со времени его создания прошло меньше часов чем мы задали умноженое на два ($cachetime*2) то тема №2

а именно зачем на 2 умножать?
SHAKA1 Дата: 18.06.2008, в 13:39 | Сообщение №6
SHAKA1
Участник
Пользователь №: 323
Сообщений: 77

Цитата
а именно зачем на 2 умножать?


Ну смотри, допустим мы задали время три дня, т. е если время в промежутке 0 до 3-х дней (=$cachetime) то тема №1, иначе если промежуток от 3-х дней до 6-ти (=$cachetime*2) тема №2, иначе повторяем всё сначала... Вот, как то так....
LepRiKonS Дата: 18.06.2008, в 15:43 | Сообщение №7
LepRiKonS
Пользователь
Пользователь №: 215
Сообщений: 39

SHAKA1, т.е. это только для двух тем, так? если тем будет больше надо будет дописывать код?
SHAKA1 Дата: 20.06.2008, в 15:53 | Сообщение №8
SHAKA1
Участник
Пользователь №: 323
Сообщений: 77

Цитата
т.е. это только для двух тем, так?если тем будет больше надо будет дописывать код?


ну да, т.к:
Цитата
У меня две темы оформления, разных цветов. Заказчик попросил сделать автоматическое переключение.


Хотя, думаю, что сделать так, что бы можно было менять сколько угодно тем, несложно...если конечно нужно....
Yakut Дата: 27.06.2008, в 17:19 | Сообщение №9
Yakut
Пользователь
Пользователь №: 411
Сообщений: 29

Самый лучший вариант. Это поставить форму на верху сайта, чтоб пользователь мог сам менять шаблон твоего сайта. Поверь мне я уже сталкивался с этим.
LepRiKonS Дата: 23.07.2008, в 17:17 | Сообщение №10
LepRiKonS
Пользователь
Пользователь №: 215
Сообщений: 39

Yakut, можешь предоставить код?:)
LepRiKonS Дата: 18.09.2008, в 01:42 | Сообщение №11
LepRiKonS
Пользователь
Пользователь №: 215
Сообщений: 39

Yakut, К сожаленью твой вариант не помог

Вы не можете ответить в тему анонимно, пожалуйста, войдите или зарегистрируйтесь!


Реклама
Главная | Форум | Новости | Подписка на новости | Темы новостей | Добавить новость | Каталог файлов | Карта файлового архива | Публикации | Опросы | Анкета пользователя | Чат | BestMaker | Викторина | Архив новостей | Карманный оракул | Поиск по сайту с помощью Яндекс | Поиск по сайту с помощью Google | Фото дня | Для души | Погода на 3 дня | IndexCat | IndexTop | Map_Pages | Весь Оракул

Rambler's Top100

Генерация страницы: 0.254 сек. и 17 запросов к базе данных за 0.021 сек.
Web site engine code is Copyright © 2006 by SLAED CMS. All rights reserved.