Beiträge von MStemberg

    [ERLEDIGT] Speicherung von Widgets

    Ahoi zusammen,

    ich hab bei einem Bekannten folgendes Problem:

    Das Hinzufügen und Deaktivieren von Widgets wird nicht gespeichert. Zieht man ein Widget in eine Sidebar, dreht sich das "Ich arbeite, Moment"-Symbol, ohne ein Ende zu finden. Selbes Spiel beim Entfernen von Widgets durch Ziehen - "Beschäftigt"-Symbol dreht sich unendlich, Widget wird aber nicht entfernt.

    Füge ich ein Widget in eine Sidebar ein, gebe die Parameter an wie Titel etc und drücke speichern, kommt die WP-Fehlermeldung:

    Zitat


    Bist du sicher, dass du das tun möchtest?
    [COLOR=#2583ad]Bitte nochmal versuchen.[/COLOR]




    Sidebars sind definiert und in den Templates auch angesprochen und das funktioniert mit demselben Template auf einer lokalen WP-Installation mit XAMPP klaglos und ohne Probleme - nur auf dem Webserver des Bekannten eben nicht.

    Hat jemand eine Idee, woran das liegen könnte und was evtl. noch zu kontrollieren wäre?

    EDIT: erledigt. der "Zugänglichkeitsmodus" musste aktiviert werdne.

    Warum willst Du das mit jquery machen?

    Ich blende bei mir mit Click auf ein Bild meine Smilies (Plugin wp_grins) ein oder aus.

    Die Smilies stehen in einem DIV mit der id "wp-grins" und sind standardmäßig auf style.display='none' gesetzt. Bei Click auf das Bild wird die JS-Funktion "hideshow()" aufgerufen, die meinen Smilieblock zunächst nach style.display abfragt und dann den style.display setzt (none oder block), der nicht als Ergebnis gewonnen wurde.
    Zusätzlich wird das Bild im DIV "smiliehide" je nach Anzeige oder nicht ausgetauscht.

    http://www.1step-beyond.de/2010/10/ein-au…des-wochenende/



    Vielleicht gibt Dir das einen Denkanstoß ohne jquery.

    So hatte ich das auch verstanden.
    Mit dem Code als Anhalt sollten aber unterschiedliche Styles zu realisieren kein Problem sein...
    Also ich hab`s mal ganz quick & dirty so gemacht (der Code ist furchtbar bestimmt, sollte aber eine Idee geben):



    Gibt mir eine zweispaltige Tabelle aus, linke Spalte gelber, rechte Spalte roter Hintergrund mit Link Name und Link URL.
    Statt Hintergrundfarben kann man ja leicht Styles setzen...

    Ich versuch es mal an einem Beispiel zu erklären:

    In meinem Theme ist das Header-Bild einfach ein DIV mit entsprechendem Hintergrundbild.

    Wenn Du jetzt zwei unterschiedliche Header haben willst, legst Du zwei Klassen in Deinem Theme in der style.css an.

    So zB



    und



    Soweit klar?

    Jetzt Custom-Field nach der Anweisung Codex auslesen (könnte im Beispiel zB A oder B sein), und je nachdem im Theme ausgeben lassen , wo das Hintegrund-Bild ins Spiel kommt (header.php):

    Code
    $feld= get_post_custom_values("header_image");
    if ($feld[0]=="A") {
    echo "<div class=\"art-HeaderA-png\"></div>";
    } else if ($feld[0]=="B") {
    echo "<div class=\"art-HeaderB-png\"></div>";
    }



    (Obiger Code ist sinngemäß und nicht für Copy & Paste gedacht).

    Und schon hast Du je nachdem, ob im Custom Field A oder B steht, zwei verschiedene CSS-Klassen für Dein Header-Bild um denentsprechend auch zwei verschiedene Bilder.

    Hab`s mir fast gedacht :-)

    Dann musst Du für feld_1, feld_2 usw (abhängig von der Anzahl Deiner Artikel = Höchstzahl X für feld_x, 10 Artikel auf der Seite=bis feld_10) diesen CSS-Code kopieren.



    usw.

    In der funktion musst Du das natürlich auch ändern

    PHP
    onClick="javascript:toggledisplay('feld_<?php echo $dummy ?>');



    EDIT: Togglen des richtigen DIVs geht jedenfalls schon mal :-)

    Jetzt musst Du nur noch gucken, wie die DIVS zu Anfang "unsichtbar" gemacht werden.

    Die 2 soll ja auch mutmasslich durch die Variable gesetzt werden, per PHP, oder?

    Allerdings heißen jetzt alle Deine DIVs "click 2". Das ist nicht besser als "Feld", eher schlimmer, da ID-Namen IMHO keine Leerzeichen enthalten sollten (ich schreib sie zumindest immer ohne) :-).

    Deine DIVs sollten aber nach meiner Meinung je nach Zahl der Beiträge "click_1", "click_2","click_3" usw heißen, damit sie eindeutig zu identifizieren sind und ebenso sollte Dein Toggle dann eben dieses DIV aufrufen, zu dem der Klick-Link "kommentar hinterlassen" gehört.

    Hast Du denn das Javascript auch so angepasst, dass die "neuen" DIVs versteckt werden als Standard? Oder sucht Javascript jetzt (weiterhin) nach dem DIV "Feld", um es auszublenden ? ;)

    EDIT: so geht`s eh nicht:-) Du hast da jetzt stehen

    Code
    <div id="click 2"></div>



    Ist die ID jetzt click oder 2?

    Müsste IMHO zB so sein:

    Code
    <div id="click_2"></div>

    Du musst natürlich die Variable auch in php notieren.

    Wenn Du einfach $a in HTML-Quelltext schreibst, dann wird auch "$a" da stehen.

    Schematisch ausgedrückt so:

    PHP
    <?php $dummy=0; ?>
    beginn loop
    <?php $dummy++; //$dummy eins erhöhen ?>
    <HTML-Code>
    <div id="feld-<?php echo $dummy; ?>"></div>
    <HTML-Code>
    Ende Loop

    Das ist ein Loop, wie Du sagst.

    Also eine Schleife.

    Und in einer Schleife kann ich keine Variablen VOR der schleife setzen und zB pro Durchlauf um 1 erhöhen? Und die gerade aktuelle Variable kann ich nicht dann im Loop verwenden? *flöt*