1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

CSS Werte "dynamisch" an style.css übergeben

Dieses Thema im Forum "Design" wurde erstellt von michael.oeser, 8. Juli 2010.

  1. michael.oeser

    michael.oeser Well-Known Member

    Registriert seit:
    24. März 2007
    Beiträge:
    347
    Zustimmungen:
    0
    Gemeinde,

    ich hoffe, die Überschrift ist nicht total bescheuert. Was ich will ist folgendes: Ich möchte gerne Farbwerte, die auf der Optionsseite (also im Backend) meines Themes eingegeben werden können an die style.css übergeben.

    Ich habe das jetzt testweise so gelöst. dass ich den kompletten Inhalt der style.css in eine style.php geschireben habe und dort kann ich dann natürlich auch per "echo" Werte dynamisch übergeben. Die style.php wird dann noch in der header.php eingebuden und gut isses.

    Das funktioniert natürlich auch, aber ist das eine gute Lösung? Gbt´s da nicht etwas schlaueres?
     
  2. Morris

    Morris Well-Known Member

    Registriert seit:
    27. Mai 2006
    Beiträge:
    1.560
    Zustimmungen:
    0
    Im Prinzip hast du 3 Möglichkeiten:

    1) Die Lösung die du schon praktizierst.
    2) Du baust die style.css serverseitig zusammen
    3) Du nutzt einen inline-style-block

    So oder so müssen die Variablen durch den PHP-Parser geschickt werden.

    Gruß
    Mo
     
  3. kaiser

    kaiser Well-Known Member

    Registriert seit:
    20. November 2008
    Beiträge:
    1.840
    Zustimmungen:
    0
    Siehe Morris.
    Ad Punkt 3)
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    zB
     
  4. nickbohle

    nickbohle Well-Known Member

    Registriert seit:
    15. Juni 2008
    Beiträge:
    48
    Zustimmungen:
    0
    Hallo Michael!

    Twenty Ten nutzt add_custom_background().

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Gruß,
    Nick
     
  5. michael.oeser

    michael.oeser Well-Known Member

    Registriert seit:
    24. März 2007
    Beiträge:
    347
    Zustimmungen:
    0
    Irgendwie stehe ich hier immer noch auf dem Schlauch. Ich möchte eigentlich keine zusätzlichen CSS Angaben in den Head schreiben. Ich möchte eine style.php nutzen. Das ist soweit ja auch völlig unspektakulär.

    Was ich irgendwie nicht hinbekomme ist, dass diese style.php die Werte, die auf der Optionsseite eingegeben werden auch lesen kann. Meine anderen Dateien, die Werte aus der Optionsseite übergeben bekommen haben oben folgendes stehen:

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Das kann ich aber in der style.php nicht verwenden, da es dort einen Fehler erzeugt.

    Ich hab dazu ein paar Sachen gefunden, blicke aber irgendwie nicht durch. Scheinbar geht es hier immer um zusätzliche CSS Dateien, was ich möglichst vermeiden will.

    http://wordpress.org/support/topic/388309

    Das kann doch eigentlich gar nicht so schwer sein, aber irgend etwas übersehe ich wohl.
     
  6. kaiser

    kaiser Well-Known Member

    Registriert seit:
    20. November 2008
    Beiträge:
    1.840
    Zustimmungen:
    0
    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Servus Michael,

    Ich hab keine Ahnung woher die globale Variable $options kommt. Falls die aus Deinem Theme ist, solltest Du die umbenennen. Da ist ein Konflikt schon vorprogrammiert (und glaub mir: Fehlern durch globale Vars nach jagen ist das Mühsamste überhaupt - die findest nie).

    Weiters.. So wie das derzeit geschrieben ist, passiert ca folgendes: Du rufst die globale $options auf, die vermutlich ein Array ist. Dieses Array beinhaltet jeweils den Namen eines Feldes im options DB-table. Und Du rufst jetzt aus der DB-Tabelle jeweils eine Option mit dem Namen $value auf. zB: $options = array('Dein_erster_optionsname', 'zweiter_optname', 'etc'); Und Du suchst dann in der Datenbank via get_option alle Optionen heraus, die einen Namen haben, der im $options Array angeführt wird und holst Dir davon jeweils den Wert vom Schlüssel ID... usw. Sei mir nicht böse, aber der Code ist ziemlich Quatsch. Lohnt sich nicht wirklich da weiter zu analysieren, wie das funktioniert. Ist der mit dem Theme so gekommen, oder von Dir? (Dann nehm ich das "Quatsch" gleich wieder zurück ;) )

    Kannst Du einmal erklären, wie Du Deine Optionen ablegst? Register_setting, etc? Dafür gibt's nämlich eine eigene API die im Codex und auf den Seiten von Ozh und Otto (Core Devs) ziemlich gut erklärt wird (sieh Links am Ende des Codex Eintrags). Wenn man das weiß, dann ist's nämlich gar nicht so schwer... :)
     
  7. michael.oeser

    michael.oeser Well-Known Member

    Registriert seit:
    24. März 2007
    Beiträge:
    347
    Zustimmungen:
    0
    Ich muss tatsächlich mal schauen, ob ich das Codefragment noch brauche. Stamt noch von meiner alten Options Page.

    Werde ich testen. Danke.
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden