Всем привет!
Подскажите как изменить background в правом блоке на чтонибудь другое, дело в том что сайт левобокий и при установке блоков справа хочется просто белый фон хотябы.
Спасибо.
на сколько я понимаю идея какая, что бы когда блок правый использовать другую шкурку (тему). может кто знает как такое можно сделать?
что бы правые блоки было видно на вашем сайте =тогда когда вы хотите ,придеться периписать тему или использовать другую тему ,там где блоки видны справа (мнение субьективно сам ничегошеньки не знаю)
что бы правые блоки было видно на вашем сайте =тогда когда вы хотите ,придеться периписать тему или использовать другую тему ,там где блоки видны справа (мнение субьективно сам ничегошеньки не знаю)
Мнение верное... Хотя особо много переписывать не придется.
на сколько я понимаю идея какая, что бы когда блок правый использовать другую шкурку (тему). может кто знает как такое можно сделать?
Можно такое сделать, но придется править mainfile.php (возможно) и, естественно, тему немного исправлять (писать отдельную функцию под правые блоки, к примеру, а в mainfile соответственно прописать, какую ф-цию вызывать, в зависимости от расположения блока).
Получилось с блоком News такое проделать. Для этого периписал функцию
function themesidebox($title, $content, $siteposition) {
$tmpl_file = "themes/coastline/blocks.html";
$thefile = implode("", file($tmpl_file));
$thefile = addslashes($thefile);
$thefile = "\$r_file=\"".$thefile."\";";
eval($thefile);
print $r_file;
}
в файле theme.php
Просто добавил еще одну функцию
function themesidebox_1($title, $content, $siteposition) {
$tmpl_file = "themes/coastline/blocks_1.html";
/* Изменил имя файла блока и добавил копию файла blocks_1.html с другим background */
$thefile = implode("", file($tmpl_file));
$thefile = addslashes($thefile);
$thefile = "\$r_file=\"".$thefile."\";";
eval($thefile);
print $r_file;
}
В блоке News изменил в файле article.php все themesidebox на themesidebox_1
News заработало она стала использовать другой background, такой же фокус с опросом не прокатил, похоже там все более серьезно подвязано через mainfile.php
Получилось с блоком News такое проделать. Для этого периписал функцию
function themesidebox($title, $content, $siteposition) {
$tmpl_file = "themes/coastline/blocks.html";
$thefile = implode("", file($tmpl_file));
$thefile = addslashes($thefile);
$thefile = "\$r_file=\"".$thefile."\";";
eval($thefile);
print $r_file;
}
в файле theme.php
Просто добавил еще одну функцию
function themesidebox_1($title, $content, $siteposition) {
$tmpl_file = "themes/coastline/blocks_1.html";
/* Изменил имя файла блока и добавил копию файла blocks_1.html с другим background */
$thefile = implode("", file($tmpl_file));
$thefile = addslashes($thefile);
$thefile = "\$r_file=\"".$thefile."\";";
eval($thefile);
print $r_file;
}
В блоке News изменил в файле article.php все themesidebox на themesidebox_1
News заработало она стала использовать другой background, такой же фокус с опросом не прокатил, похоже там все более серьезно подвязано через mainfile.php
да. там для этого спец функция есть
function render_blocks($side, $blockfile, $title, $content, $bid, $url) {
if(!defined('BLOCK_FILE')) {
define('BLOCK_FILE', true);
}
if (empty($url)) {
if (empty($blockfile)) {
if ($side == "c") {
themecenterbox($title, $content);
} elseif ($side == "d") {
themecenterbox($title, $content);
} else {
themesidebox($title, $content);
}
} else {
if ($side == "c") {
blockfileinc($title, $blockfile, 1);
} elseif ($side == "d") {
blockfileinc($title, $blockfile, 1);
} else {
blockfileinc($title, $blockfile);
}
}
} else {
if ($side == "c" OR $side == "d") {
headlines($bid,1);
} else {
headlines($bid);
}
}
}
чтобы сделать, как вам нужно, замените в СВОЕЙ (не в этой - она только для примера!) функции render_blocks вызов themesidebox. например, так:
все изменения находятся между символами #########
function render_blocks($side, $blockfile, $title, $content, $bid, $url) {
if(!defined('BLOCK_FILE')) {
define('BLOCK_FILE', true);
}
if (empty($url)) {
if (empty($blockfile)) {
if ($side == "c") {
themecenterbox($title, $content);
} elseif ($side == "d") {
themecenterbox($title, $content);
############
} elseif ($side == "r") {
themesidebox_1($title, $content);//Вставляем нашу новую функцию для правых блоков
}
############ Все
} else {
themesidebox($title, $content);
}
} else {
if ($side == "c") {
blockfileinc($title, $blockfile, 1);
} elseif ($side == "d") {
blockfileinc($title, $blockfile, 1);//Исправляем тут. И никакой самодеятельности ;)
#############
} elseif ($side == "r") {
blockfileinc($title, $blockfile, 3);
}
#############
} else {
blockfileinc($title, $blockfile);
}
}
} else {
if ($side == "c" OR $side == "d") {
headlines($bid,1); //Если есть желание, можно и тут подкрутить
} else {
headlines($bid);
}
}
}
//Желательно еще и тут подправить:
function blockfileinc($title, $blockfile, $side=0) {
$blockfiletitle = $title;
$file = file_exists("blocks/".$blockfile."");
if (!$file) {
$content = _BLOCKPROBLEM;
} else {
include("blocks/".$blockfile."");
}
if (empty($content)) {
$content = _BLOCKPROBLEM2;
}
if ($side == 1) {
themecenterbox($blockfiletitle, $content);
} elseif ($side == 2) {
themecenterbox($blockfiletitle, $content); //Правим тут:
###############
} elseif ($side == 3) {
themesidebox_1($blockfiletitle, $content); //Это тож новая функция для правых блоков
###############
} else {
themesidebox($blockfiletitle, $content);
}
}
если я ничего не напутал и не пропустил, то на этом все....