| Zadając pytanie dotyczące PHPNuke podaj jego wersje!! |
| Author |
Message |
dudi
@admin

Joined: 13.12.2004
Posts: 3175
Helps: 330
Location: Tychy
Status: Offline
|
Posted: 16 Dec 2004 08:11:00
|
|
User browser: |
Czasem zachodzi potrzeba wyłączenia wyświetlania lewych, lub prawych bloków w jakimś konkretnym module.
Jeśli chodzi o prawe bloki - za ich wyświetlanie odpowiada zmienna
$index w pliku index.php danego modułu:
| Code: |
<?php
if (!eregi("modules.php", $PHP_SELF))
{
die ("You can't access this file directly...");
}
$index = 1;
require_once("mainfile.php"); |
Jeśli zmienna jest ustawiona:
Prawe bloki będą wyświetlane.
Jeśli nie ma jej w ogóle, lub ma wartość 0 wówczas bloki nie będą wyświetlane.
Lewe bloki można wyłączyć w następujący sposób:
Otwieramy plik themes/twoj_theme/theme.php i odnajdujemy w nim taki fragment:
| Code: |
function themeheader()
global $admin, $user, $banners, $sitename, $slogan, $cookie, $prefix, $db, $nukeurl, $anonymous; |
(linijka global..... może się różnić w zależności od zastosowanego stylu)
i w linijce
| Code: |
| global $admin, $user, $banners, $sitename, $slogan, $cookie, $prefix, $db, $nukeurl, $anonymous; |
na końcu dopisujemy
Np:
| Code: |
| global $admin, $user, $banners, $sitename, $slogan, $cookie, $prefix, $db, $nukeurl, $anonymous, $name; |
Następnie odnajdujemy fragment:
i jeśli np. chcemy wyłączyć lewe bloki w module Forums modyfikujemy ten fragment następująco:
| Quote: |
if ($name !='Forums') {
blocks(left);
} |
Po takiej operacji lewe bloki w module Forums nie będą wyświetlane.
|
Last edited by dudi on 17 Apr 2005 13:39:07; edited 1 time in total
|
|
|
|
|
 |
|
|
 |
Jaszczur
~user

Joined: 21.12.2004
Posts: 1150
Helps: 83
Location: Racibórz/Katowice
Status: Offline
|
Posted: 10 Feb 2005 19:19:47
|
|
User browser: |
| dudi wrote: |
if ($name !='Forums') {
blocks(left);
} |
Można też dla większej ilości bloków zamiast powyższego kody wkleić ten oto:
| Code: |
if ($name=='Forums') {
/* nie pokazuje */
}
else
if ($name=='Kadrowka') {
/* nie pokazuje */
}
else
if ($name=='Private_Messages') {
/* nie pokazuje */
}
else
if ($name=='Members_List') {
/* nie pokazuje */
}
else {
blocks(left);
} |
|
|
|
|
|
|
|
 |
Suchy
~user

Joined: 23.12.2004
Posts: 743
Helps: 63
Location: Łódź
Status: Offline
|
Posted: 11 Feb 2005 00:18:03
|
|
User browser: |
ewentualnie zrobić to w taki sposób by przy każdym nowym module nie trzeba było dopisywać nowego warunku do themsa, dzięki temu przy każdym wykonywaniu skryptu themsa nie będzie trzeba sprawdzać każdego warunku po kolei:
W pliku theme.php zamieniamy:
na:
| Code: |
if ($index2 == 1 || (!isset($index2)) ) {
blocks(left);
} |
oraz dopisujemy $index2 do:
| Code: |
function themeheader()
global $admin, $user, $banners, $sitename, $slogan, $cookie, $prefix, $db, $nukeurl, $anonymous; |
Teraz wystarczy podobnie jak w przypadku prawych bloków, dopisać w pliku index, wybranego modułu (lub modułów):
|
Last edited by Suchy on 28 May 2005 17:46:06; edited 1 time in total
|
_________________ Suchy the Master
www.gtw.avx.pl
www.scarlet.ivy.prv.pl |
|
|
|
 |
|
|
|
|
View next topic
View previous topic
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum Nie możesz dołączać plików na tym forum Możesz ściągać pliki na tym forum |
|
|
|
|
|