Schlagwort: PHPNuke

RavenYaml_One Full Size

Da der Default Wert im Main Content Bereich des RavenYaml_One Themes nicht auf Full Size definiert ist,
biete ich hier einen kleinen Workaround um das Theme im Full Size Modus zu gestalten.

Öffne/Open:

themes/RavenYaml_One/style/override_basemod_style.css

Finde / Find:

#header a:hover{
color: #ccc;
text-decoration:none;
} 

Füge direkt danach ein / In next line add:

/* full size */
.page_margins { max-width: 100%; }
#col1 { width: 15%; }
#col2 { width: 15%; }  
#col3 { margin: 0 15%; }
/* Endfull size */ 

RavenNuke 2.4 Testseite ist online

Seit heute ist die aktuelle Testseite RavenNuke 2.4 Testseite online.

Sie wird durch das RavenYaml_One Theme basierend auf das YAML • (X)HTML/CSS Framework aufgebaut. Das Theme ist 100 % XHTML 1.0 Transitional und CSS 2.1 validiert !

Die Forentemplates sind komplett neu geschrieben worden. Im gegensatz zu den alten Forentemplates,werden die Inhalte in den neuen Templates nicht mehr mit Hilfe von HTML Tabellen positioniert. Somit gibt es auch keine tief verschachtelten Tabellen mehr. In einigen Templates werden noch Tabellen genutz. Sinnvollerweise für die Auflistung der Forenkategorien, Beiträgen und den Smilies.

Das Theme befindet sich noch in der Anfangsphase und beinhaltet noch einige Fehler. Wenn diese beseitigt sind, wird das Theme released.

Link: http://raven24.m2-medias.de

Keine rechten Blöcke auf der Startseite

Suche in der theme.php nach:

if ($index == 1) {

und ersetze es durch:

if (defined('INDEX_FILE')) {

Werbebanner im Theme einbauen

Es müssen ein paar kleine Änderungen an der header.html, theme.php und banner.php vornehmen:

header.html:

<tr>
<td>
<img>
<a><img></a></td>
<td>
$showbanners
</td>
<td><IMG></td>
<td><img>

theme.php

function themeheader() {
global $user, $banners, $sitename, $slogan, $cookie, $prefix, $dbi, $showbanners;
cookiedecode($user);
$username = $cookie[1];
if ($username == "") {
$username = "Anonymous";
}
echo "<body>";
if ($banners == 1) {
include("banners.php");
}
$tmpl_file = "themes/NukeNews/header.html";
$thefile = implode("", file($tmpl_file));
$thefile = addslashes($thefile);
$thefile = "$r_file="".$thefile."";";
eval($thefile);
print $r_file;
blocks(left);
$tmpl_file = "themes/NukeNews/left_center.html";
$thefile = implode("", file($tmpl_file));
$thefile = addslashes($thefile);
$thefile = "$r_file="".$thefile."";";
eval($thefile);
print $r_file;
}

banners.php

function viewbanner() {
global $prefix, $db, $admin, $sitename, $adminmail, $nukeurl, $showbanners;
$numrows = $db->sql_numrows($db->sql_query("SELECT * FROM " . $prefix . "_banner WHERE type='0' AND active='1'"));

(der restliche Code der Funktion)

}
// echo "<center><a><img></a></center>";
$showbanners = "<center><a><img></a></center>";
}
}

Themes multilanguagefähig machen

Oft ist es so, das entscheidende Hinweise auf eure Nuke Seite wie z.b. Login, Registrieren, Willkommen und Abmelden etc. auf englisch sind.
Diese Dinge kann man in der theme.php im Theme deiner Wahl ändern, in dem man die Textstellen übersetzt.

Die ist aber nicht der richtige Weg einer Themesanpassung !

Wenn man sein Theme sprachunabhängig gestalten möchte, kann man auf gewisse Konstanten die in Nuke integriert sind zurückgreifen.

Diese Sprachkonstanten sind unter html/language/lang_german.php z.B. definiert.

man kann also anstatt Welcome oder Willkommen die Sprachkonstante „._BWEL.“ benutzen.

Hier mal eine Liste der gängigen Sprachkonstanten die in jeder theme.php vorhanden sind:

Back
*****************************************************************************
"._BACK."

Gast
*****************************************************************************
"._GUEST."


Willkommen
*****************************************************************************

"._BWEL."

Registrieren
*****************************************************************************

"._BREG."


Logout
***************************************************************************

"._LOGOUT."


Suche
***************************************************************************


"._SEARCH."

Ein Beispiel

Suche in etwa

$theuser = "&nbsp;&nbsp;Welcome  $username!";

und Ersezte das Welcome mit

"._BWEL."

also so sollte es dann aussehen:

$theuser = "&nbsp;&nbsp;"._BWEL." $username!";

Wichtig dabei ist die “ mit zu benutzen

Rahmen um Bilder entfernen

Wie bekomme ich die blauen Rahmen weg, die meine Bilder umgeben?
Wenn z.B. ein Bild verlinkt wird, bildet sich ein blauer Rahmen um das Bild.

Im Stylesheet des Themes folgendes einfügen:

öffne themes/dein_theme/style/style.css

Füge am Ende ein:

img {
border: 0px;
} 

Seitenbesuche des Admin nicht in der Statistik

Du möchtest die Seitenbesuche eines Admin in der Nuke Statistik ausschließen,
dann gehe folgendermaßen vor:

Öffne root/header.php

Suche:

include("includes/counter.php"); 

Ersetze mit:

global $admin;

if(!is_admin($admin)) {

   include("includes/counter.php");

                                }

Theme zufällig für Besucher wählen

Wenn mehrere Themes in Nuke installiert sind,
kann man Themes per Zufall auswählen lassen und diese für den Besucher generieren.

(Dies funktioniert nicht, wenn der Besucher bereits ein Theme gewählt hat. )

Öffne root/mainfile.php

Suche:

	$ThemeSel = $Default_Theme; 

Und ersetze mit:

$evogettheme =opendir('themes/');

$evothm = '';
while ($file = readdir($evogettheme)) {
if ($file != &quot;.&quot; &amp;&amp; $file != &quot;..&quot; &amp;&amp; $file !=&quot;index.html&quot; &amp;&amp; $file !=&quot;&quot; &amp;&amp; $file !=&quot;index.htm&quot;) 
{
$evothm .= &quot;$file,&quot;;
}
}

$thethemes = explode(&quot;,&quot;, $evothm);
$numthemes = count($thethemes)-1;
$evonumber = rand(1, $numthemes); 
$evotheme = &quot;$thethemes[$evonumber]&quot;;

		$ThemeSel = $evotheme;
closedir($evogettheme);

Linke Blöcke für bestimmte Module ausblenden

Wenn für bestimmte Module die linke Blöcke ausgeblendet werden sollen, folgendermaßen vorgehen:

Öffne theme.php

Suche themeheader()

Dort in der Zeile globals…

 $name

hinzufügen.

Nun finde:

blocks(left);

Ersetze mit:

/* Hier für das gewünschte Modul den Modulnamen Forums den Modulnamen wählen */
if ($name=='Forums') {          
    /* Zeige linke Blöcke nicht. */
    }
    else {
    blocks(left);
    } 

Wenn die Bedingung für mehrer Module gelten soll dann diesen Code einsetzen:

if ($name=='Forums') {
     /* Zeige linke Blöcke nicht. */
    }
    else
    if ($name=='Members_List') {
    /* Zeige linke Blöcke nicht. */
    }
    else
          if ($name=='My_eGallery') {
     /* Zeige linke Blöcke nicht. */
    }
       else
          if ($name=='Private_Messages') {
    /* Zeige linke Blöcke nicht. */
    }
    else {
    blocks(left);
    }
 

Oder eleganter:


if ($name=='Forums') &amp;&amp; ($name=='Members_List') &amp;&amp; if ($name=='My_eGallery') &amp;&amp; if ($name=='Private_Messages') {
    }
    else {
    blocks(left);
    } 

Präsentiert von WordPress & Theme erstellt von Anders Norén