[gelöst] pmx-love anpassen

Begonnen von Septembergrau, 25 Januar 2012, 13:15:47

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 1 Gast betrachten dieses Thema.

Septembergrau

Hallo,
versuche gerade das Hintergrundbild beim Theme pmx-love zu ändern, das eine unbestimmte Anzahl (mind. 10) Bilder sich abwechseln, wenn man in einen anderen Bereich geht.
Beispiel: Home = Originalbild - dann zu News und dort sollte ein anderes ercheinen, usw.
Wie könnte ich das lösen.

Danke für Eure Hilfe

icebreaker

Das würde mich auch interessieren! Und andere User sicher auch.

Gruß
icebreaker

Septembergrau

in einem WordPress Theme (glaube TwentyTen) hatte ich es mal gesehen, kenne mich aber noch zu wenig mit den Code aus.

icebreaker

Moin Septembergrau

In dem genannten Theme wechselt die Headergrafik. Beim pmx-love soll aber die Hintergrundgrafik wechseln. Das ist was anderes.

Gruß
icebreaker

Septembergrau

Moin Icebreaker,
wie gesagt, kenne mich mit den feinheiten im Code nicht so sehr aus.
Hätte ja sein können, wenn man ein wenig mehr Ahnung hat als ich, das es als Grundlaage verwendet werden kann um s daraus dann passend zu machen.
Wohl mein Denkfehler   :puzzled:

comedi

Hoi Septembergrau,  :)

schau dir mal das Theme stylevantage an. Dort werden verschiedene css-Dateien (Farben) eingebunden. Bei dir wäre das dann immer bei nur der Bereich.

body {
background:.................................................
}


Habe es nicht getestet. Denke aber das sollte ein Ansatz sein.
LG Michael


Kein Support über PN, Mail oder ICQ!

CMS-Version: pragmaMx 1.12.3 --- PHP-Version: 5.3.5
MySQL-Version: 5.1.63 --- Server-Version: Apache 2.2.4

Wer den Weg zum Ziel kennt - dann aber Umwege nimmt - muss sich nicht wundern wenn er sein Ziel nicht findet!


Gemeinschaftseite: www.pragmamx-erweiterungen.de

Olaf

einfache wäre sicher die myheader.php:

Für jeden Style eine CSS-Datei in den Theme-Ordner legen, mit dem Inhalt
body {
   Background:............;
}

im PHP-Bereich der my_header.php folgende Abfrage einbauen

switch (MX_MODULE) {   //beinhaltet den Modulnamen
         case "News":
         pmxHeader:.add_style("pfadzumtemplate/News.style.css");
         break;
         case "Wasweisich":
         pmxHeader:.add_style("pfadzumtemplate/Wasweisich.style.css");
         break;
         .
         .
         .
         default:
           // nix, wenn original verwendet werden soll
         break;
}


sollte klappen....
g

Olaf

Kein Support über PN, Mail etc.!
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

comedi

Hoi Septembergrau,  :)

Habe es mal gerade getestet und direkt im Theme eingesetzt.

theme.functions.php

suche: function theme_replace_start  ca.Zeile 183 und füge hinter
$part[] = array('"images/', '"' . MX_THEME_DIR . '/images/'); // normale images im theme
folgendes ein:
$part[] = array("{THEMEBACKGROUND}", theme_get_layout_background());  // wechselnder Background

füge am Ende vor ?> folgendes ein:
//Hintergrundwechsel
function theme_get_layout_background()
{
    global $themesetting;
    foreach ($themesetting['headnav'] as $title => $menue) {
        if (in_array(1, $menue['case'])) {
            if ($menue['background']) {
                return $menue['background'];
            } else {
                return $themesetting['basebackground'];
            }
        }
    }
    /* wenn nix gefunden, dann Standard zurueck.. */
    return $themesetting['basebackground'];
}


theme.settings.php

füge hinter:
defined('mxMainFileLoaded') or die('access denied');

folgendes ein:
/**
  * Hintergrundeinstellung
  */
$themesetting['basebackground'] = 'home';


nun füge in den einzelnen Module in der headnav
folgendes z.B. bei den News ein
'background' => 'news',

so z.B.
$themesetting['headnav'][] = array(/* Newsmodul */
            'background' => 'news',
            'menu' => 1,


theme.html

füge in den Bereich more header folgendes ein:
<link rel="stylesheet" href="style/background.php?background={THEMEBACKGROUND}" type="text/css" /> 


style.css


dort einfach den background: ................................. entfernen

und jeweils

eine neue background-news.css (z.B.)

body {
background: url(../images/news.jpg) no-repeat scroll center top #FDF9F6;
}


Jetzt erstelle dir noch die background.php mit folgendem Inhalt:

<?php
error_reporting
(0);
if (empty(
$_REQUEST['background'])) {
    
$background 'home';
} else {
    
$background trim($_REQUEST['background']);
}


if (!
$background || !file_exists(dirname(__FILE__) . '/background-' $background '.css')) {
    
$background 'home';
}

header('Content-Type: text/css');
header('Expires: ' gmdate('D, d M Y H:i:s GMT'time() + 3600 24)); // 1 day

include(dirname(__FILE__) . '/background-' $background '.css');

return;
?>


@import url(backgrounds-<?php echo $background ?>.css);


Habe es hier mal nur mit Farben gemacht. Denke so ähnlich sollte es dann sein.



LG Michael


Kein Support über PN, Mail oder ICQ!

CMS-Version: pragmaMx 1.12.3 --- PHP-Version: 5.3.5
MySQL-Version: 5.1.63 --- Server-Version: Apache 2.2.4

Wer den Weg zum Ziel kennt - dann aber Umwege nimmt - muss sich nicht wundern wenn er sein Ziel nicht findet!


Gemeinschaftseite: www.pragmamx-erweiterungen.de

Septembergrau

danke Euch sehr für die gemachte Mühe

Sehe ich es richtig: es wird für jedes Modul das Bild/Farbe vom Backround angelegt?

Wenn ja, dann ist es zwar super aber nicht das was ich meinte. (Hilft dann mit Sicherheit anderen Usern weiter.)

Hatte mich wohl am Anfang der Thematik etwas falsch ausgedrück, oder beim lesen Eurer Antworten falsch verstanden.
Ich suche den Code für den Backround, welcher über ein Zufallsprinzip den Backround (mit Hintergrund - Bildern) immer neu ersetzt, wenn ich woandes klicke (nicht abhängig vom Modul).

Olaf


          $number=mt_rand(1,5)    //Zufallszahl zwischen 1 und 5 (hier Beispielsweise)

         pmxHeader:.add_style("pfadzumtemplate/".$number.".style.css");



so legst du die css-Dateien mit vorangestellter Nummer an. alse "1.style.css" usw.....
g

Olaf

Kein Support über PN, Mail etc.!
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

icebreaker

Hallo Septembergrau

Scheinbar meinst du einen zeitgesteuerten Wechsel der Hintergrundgrafik. Das kannst du mit einem Javascript regeln. Schau dir das mal an:

http://www.standon.be/100scripts/html/slideshow/slide4.html

Da kannst du einstellen, wie lange das jeweilige Bild angezeigt wird, bevor es wechselt.


Allerdings finde ich persönlich die Lösung von Comedi/TP eleganter.


Gruß
icebreaker

Septembergrau

danke dir TP

IB, nein es war schon so gemeint wie es TP geschrieben hatte.
Nicht zeitgesteuert, sondern wen ich z.B. von Home auf Forum und dann zu Download oder so klicke, das dabei immer wieder ein anderes HG Bild erscheinen sollte aus einem Ordner in zufälliger Reihenfolge.

Andi

Moin :)

willst du das den Besuchern wirklich antun?

Mit dem einzelnen ganzseitigen Hintergrundbild hat  man ja schon Probleme die relevanten Textstellen auf der Seite zu finden. Und wenn man sich dann bei jedem Klick neu zurechtfinden muss....
Nee, ich würde da 2x klicken, dann wäre ich wieder weg.
schön´s Grüssle, Andi

Septembergrau

Moin Andy,
das wird noch beprochen alles, was nun damit geschieht.
Da ich aber andere Projekte auch habe, wird es wohl eher auf eines dieser zutreffen.

Danke Euch allen sehr  :thumbup: