Вот тут поставил PHP-NUKE-7.6 RUS+Pached v3.1 всё работает нормально с темой DeepBlue и все блоки работают.а как только я в админки в Настройки Сайта переключаю на другую тему,иду на главную страницу а правых блоков нету.
Подскажите как сделать
serz открывайте вашу тему и тему DeepBlue и смотрите как там происходит вызов правых блоков в функции themefooter():
blocks(right);
измените на подобие или подредактируйте
Я в кодах посмотрел походу всё нормально посмотрите вы
Код моей темы
//************************************** Different Blocks *****************************************//
//if 0, use blocks.htm, if 1, use blocks-right.htm, if 2, use blocks-left.htm
global $swapleftright;
$swapleftright = "0";
if (($name=='Forums') OR ($name=='Private_Messages')) {
} else {
blocks(left);
} ;
$swapleftright = "0";
//************************************** End Different Blocks *****************************************//
echo "</td>\n"
."<td width=\"5\" valign=\"top\"><img src=\"themes/тема/images/spacer.gif\" width=\"5\" height=\"0\" border=\"0\"></td>\n"
."<td width=\"100%\">\n";
}
/************************************************************/
/* Function themefooter() */
/************************************************************/
function themefooter() {
global $index, $user, $banners, $cookie, $prefix, $dbi, $total_time, $start_time, $foot1, $foot2, $foot3, $foot4;
$maxshow = 10; // Number of links to dispaly in the block.
$a = 1;
$result = sql_query("select lid, title, hits from ".$prefix."_links_links order by date DESC limit 0,$maxshow", $dbi);
while(list($lid, $title, $hits) = sql_fetch_row($result, $dbi)) {
$title2 = ereg_replace("_", " ", "<b>$title</b>");
$show .= " $a: <a href=\"modules.php?name=Web_Links&l_op=viewlinkdetails&lid=$lid&ttitle=$title\">$title2</a><br> <b><font class=\"content\">$hits</b><font class=\"copyright\"> times<br>";
$showlinks = " <A name= \"scrollingCode\"></A><MARQUEE behavior= \"scroll\" align= \"left\" direction= \"up\" height=\"100\" scrollamount= \"2\" scrolldelay= \"90\" onmouseover='this.stop()' onmouseout='this.start()'>$show";
$a++;
}
$maxshow = 10; // Number of downloads to display in the block.
$a = 1;
$result = sql_query("select lid, title, hits from ".$prefix."_downloads_downloads order by date DESC limit 0,$maxshow", $dbi);
while(list($lid, $title, $hits) = sql_fetch_row($result, $dbi)) {
$title2 = ereg_replace("_", " ", "<b>$title</b>");
$show2 .= " $a: <a href=\"modules.php?name=Downloads&d_op=viewdownloaddetails&lid=$lid&title=$title\">$title2</a><br> <b><font class=\"content\">$hits</b><font class=\"content\"> times<br>";
$showdownloads = " <A name= \"scrollingCodedownloads\"></A><MARQUEE behavior= \"scroll\" align= \"center\" direction= \"up\" height=\"100\" scrollamount= \"2\" scrolldelay= \"20\" onmouseover='this.stop()' onmouseout='this.start()'><table width=\"100%\"><tr> <td></td></tr>$show2</table></marquee>";
$a++;
}
$mtime = microtime();
$mtime = explode(" ",$mtime);
$mtime = $mtime[1] + $mtime[0];
$end_time = $mtime;
$total_time = ($end_time - $start_time);
$total_time = "".substr($total_time,0,5)." "._SECONDS."";
if ($index == 1) {
echo "</td>\n"
."<td width=\"5\" valign=\"top\"><img src=\"themes/тема/images/spacer.gif\" width=\"5\" height=\"0\" border=\"0\"></td>\n"
."<td width=\"170\" valign=\"top\">\n";
blocks(right);
}
echo "</td>\n"
."<td width=\"51\" valign=\"top\" background=\"themes/тема/images/rightborder.gif\"><img src=\"themes/тема/images/rightborder.gif\" width=\"51\" height=\"5\" border=\"0\"></td>\n"
."</tr>\n"
."</table>\n";
$footer_message = "$foot1<br>$foot2<br>$foot3<br>$foot4";
include("themes/тема/footer.php");
}
Код темы DeepBlue
/************************************************************/
/* Function themefooter() */
/* */
/* Control the footer for your site. You don't need to */
/* close BODY and HTML tags at the end. In some part call */
/* the function for right blocks with: blocks(right); */
/* Also, $index variable need to be global and is used to */
/* determine if the page your're viewing is the Homepage or */
/* and internal one. */
/************************************************************/
function themefooter() {
echo "<br>";
if (defined('INDEX_FILE')) {
echo "</td><td><img src=\"themes/DeepBlue/images/pixel.gif\" width=\"10\" height=\"1\" border=\"0\" alt=\"\"></td><td valign=\"top\" width=\"138\" bgcolor=\"d3e2ea\">\n";
blocks("right");
echo "<td><img src=\"themes/DeepBlue/images/pixel.gif\" width=\"6\" height=\"1\" border=\"0\" alt=\"\">";
}
else {
echo "</td><td colspan=\"2\"><img src=\"themes/DeepBlue/images/pixel.gif\" width=\"10\" height=\"1\" border=\"0\" alt=\"\">";
}
echo "<br><br></td></tr></table>\n"
."<br><center>";
footmsg();
echo "</center>";
}
serzво первых допущена ошибка, здесь:
blocks(left);
} ;
лишняя точка с запятой после скобок, и еще в патче 3.1 вместо переменной $index ввели константу 'INDEX_FILE' не знаю зачем, но раз есть, значит есть, переправьте
if ($index == 1) {
на
if (defined('INDEX_FILE')) {
в нестандартных модулях тоже придется переправлять, там где написано:
$index = 1;
надо писать:
define('INDEX_FILE', true);
всё заработали. спасибо вам большое