Beiträge von codestyling

    Der Fehler ist in der WordPress-Bug-Datenbank beschrieben: #6532 (Warning: The first argument should be an array in /www/lu22radiotandil.com.ar/htdocs/wp-includes/widgets.php on line 654) - WordPress Trac - Trac

    So ganz bin ich daraus noch nicht schlau geworden. Aber es sieht so aus, dass das mit den kaputten Umlauten zusammenhängt. Also erstmal schauen, dass die Einstellungen zu den Encodings stimmen. Wenn das wieder geht, müssen wohl die Einträge in den Optionen entfernt werden, welche Text-Widgets darstellen. So beschreibt es zumindest einer der Poster im Trac-Eintrag. Keine Ahnung, ob das hinkommt.

    Hm, wenn das tatsächlich so ist, kann ja vielleicht jemand ein Erste-Hilfe-Plugin basteln?! :)

    EDIT: Im WordPress-Forum sind auch noch Widget-Probleme beschrieben, vielleicht hilft das ja auch weiter: WordPress › Support » WP 2.5 widgets are broken

    Ich hab mir das alles man angesehen und in der Tat sieht es so aus, des es beim Auspacken der TextWidget Inhalte (unserialize() PHP Funktion) mehrere Probleme zu geben scheint:

    Einerseits wird in Trac beschrieben, das es bei nicht Übereinstimmung von collations (DB und Tabelle in der der Text ist) einfach null zurückgibt und kein Array (was die Fehlermeldungen erklären würde, null ist kein Array).
    Dies kann dadurch passieren, das eine "alte" WP Version noch in ISO lief, die neue aber jetzt auf UTF-8 konfiguriert wurde ohne die DB auch auf UTF-8 collations zu bringen.

    Zum anderen wird im PHP Kommentarthread davon berichtet, das ein Auspacken (unsierialize) von Texten, die einfache Hochkomma enthalten Beispiel: a:4:{i:0;s:43:"Date_Format(dateEntree,'%Y%m%d')";} ebenfalls zu keinem Array führen. PHP: unserialize - Manual
    Das führt dann beim Auspacken zum gleichen Fehler.

    Die Widget Problematik scheint sich am besten lösen zu lassen, wenn man die Textwidgets in der DB löscht, die DB auf unicode collation bringt und wieder neu einpflegt.

    Wenn das wirklich so in deiner index.php vorn dransteht, dann ja. Aber ich befürchte, dass dass irgendetetwas automatisch dranbaut (Plugin) oder beim FTP Upload etwas in die Hose gegangen ist.
    Der Seitenausschnitt ist der angezeigte Seitenquelltext deiner weißen Seite. Schau dir im Browser den Quelltext an, dann siehst du das.

    Wie hier zu sehen ist Roadmap - WordPress Trac - Trac, sind sämtliche WP 2.5.1, die bisherige, geplante WP 2.5.2 und sogar die aktuelle WP 2.6 aus er Roadmap verschwunden (completet) ! Mir fiel das auf, als ich den Status eines von mir für WP 2.5.1 und WP 2.6 gemeldeten Bugs überprüfen wollte (gettext Problematik) und bitter feststellen musste, das dieser auf Version [COLOR=Red]2.9[/COLOR]! vertagt wurde.

    Im Moment weiss ich nicht, was ich von dieser Roadmap halten soll, wenn alle offenen Patches < 2.6.1 nicht mehr aufgeführt werden oder 3 Versionen nach oben verlegt werden. Hat jemand von euch nähere Infos ?

    Das sind 2 Seiten in einer ! Vorn dran ist ein TinyMCE Plugin Dialog, deshalb auch die Beschriftungen, die du meintest. Das wird dort so gemacht.
    Und dahinter kommt sofort dein Blog html (nicht mehr rot markiert).

    Ist mir unklar, warum hier ein TinyMCE Plugin Seite noch vor die eigentliche Seite gequetscht wird.

    Eine Vemutung. Benutzt du WP Super Edit Plugin als TinyMCE Erweiterung ? Dies geht nicht mehr in WP 2.6 !

    Es wäre halt einfacher, gleich the_time() zu nehmen, dann braucht man solche Verrenkungen nicht ;)


    Nicht ganz, denn wenn ich bestehende Themes oder Plugins weiterhin an das DB Feld date_format koppeln will ohne einen Formatter angeben zu müssen, dann wirds hier auf den time_format abgebildet, der nicht zwangsläufig so definiert sein muß, wie der für Date:

    PHP
    function get_the_time( $d = '' ) {
        if ( '' == $d )
            $the_time = get_post_time(get_option('time_format'));
        else
            $the_time = get_post_time($d);
        return apply_filters('get_the_time', $the_time, $d);
    }

    Wenn man hart codierte oder *.mo basierte Formatter nehmen will/kann, ist dein Einwand berechtigt, wenn man das aber von den Optionen abhängig machen will, die man einstellen kann, geht dein Einwand nach hinten los.

    Gears klingt erstmal sehr gut, aber die Bauchschmerzen, die ich damit habe:

    1. Man findet Fehler nicht mehr, wenn mal WP "spinnt".
    2. Wann weiss ich, was wie synchronisiert ist, wenn der Browser "verreckt" ?
    3. Wann ist ein Pluginupdate (JS/CSS Änderung) wirksam, wenn man die macht (machen muß).

    Bei den vielen Problemen, wie "Hilfe, mein Editor ist kaputt" , "Warum gehen meine Permalinks nicht" oder "Mein Text, den ich eingebe, wir verstümmelt" kann man dann nicht mehr genau nachvollziehen, wo der Fehler auftritt. Support wird dann nur noch zu Hinweisen degradiert, es sei denn, man kann auf der betroffen Machine selbst mal mit WP Admin Rechten prüfen.

    Also wird durch Einsatz von Gears der qualifizierte Support, der in so einem Forum möglich ist, deutlich eingeschränkt. Und es wird nicht lange dauern, dann quellen hier die Gears bezogenen Probleme massenweise hoch.

    Ergänzung: Wenn in deinem Theme (vermute man sitemap.php) irgendwo so was steht, wie:

    PHP
    _e('');
    _e('','irgend eine textdomain');
    echo __('');
    echo __('', 'irgend eine textdomain');


    dann bekommst die diese Informationen augespuckt, denn diese sind auf einem leeren String Eintrag in der Sprachdatei gemappt. Wenn du nix dergleichen hast, dann ist das ein übles memory corruption Problem!

    Aber worin besteht der Unterschied zwischen der ersten und zweiten Variante?!


    Die erste Variante ist das, was idealerweise beim ersten Post in der Loop innerhalb von the_date() ausgeführt wird, sofern du keinen Formatierer mitgibts.

    Die 2.Variante sorgt im Grunde nur dafür, dass das vorherige Datum bei Loop Auswertungen von mehreren Posts auf unbekannt zurückgestellt wird. Damit kann dann the_date() intern nicht mehr aktuelles Datum == vorheriges Datum testen. Somit würde auch 2. dafür sorgen, das immer ein Date erscheint und nicht bei Gleichheit weggelassen.

    In beiden Varianten kann man den Formatierer natürlich ersetzen, wenn man wollte. Es ist nur eine "Geschmacksfrage", was der eine oder andere Programmierer bevorzugt.

    hmmm...ist ja fast peinlich zu sagen, aber wo genau muss ich denn da schauen, damit ich die Zeile überprüfen kann. Sprich welchen Quellcode meinst du?


    In deiner Sidebar gibts das hier:

    Code
    <div id="dropdisp178">
    <div class="nojavadropcontent" style="text-align: left;"><p> </p><p>
    <a class="link" rel="nofollow" title="Del.icio.us" href="http://del.icio.us/post?url=http://www.numinose.com/2008-07-16/slow-motion-youtube-videos-alltagsszenen-von-brainiac-umgesetzt/&amp;title=Slow Motion Youtube Videos &acirc;�� Alltagsszenen von Brainiac umgesetzt"><img alt="Del.icio.us" src="http://www.numinose.com/wp-content/plugins/social-dropdown/icons/delicious.png" /></a><a class="link" rel="nofollow" title="Digg" href="http://www.digg.com/submit?phase=2&amp;url=http://www.numinose.com/2008-07-16/slow-motion-youtube-videos-alltagsszenen-von-brainiac-umgesetzt/&amp;title=Slow Motion Youtube Videos &acirc;�� Alltagsszenen von Brainiac umgesetzt"><img alt="Digg" src="http://www.numinose.com/wp-content/plugins/social-dropdown/icons/digg.png" /></a><a class="link" rel="nofollow" title="Facebook" href="http://www.facebook.com/share.php?u=http://www.numinose.com/2008-07-16/slow-motion-youtube-videos-alltagsszenen-von-brainiac-umgesetzt/"><img alt="Facebook" src="http://www.numinose.com/wp-content/plugins/social-dropdown/icons/facebook.png" /></a><a class="link" rel="nofollow" title="Furl" href="http://www.furl.net/storeIt.jsp?t=Slow Motion Youtube Videos &acirc;�� Alltagsszenen von Brainiac umgesetzt&amp;u=http://www.numinose.com/2008-07-16/slow-motion-youtube-videos-alltagsszenen-von-brainiac-umgesetzt/"><img alt="Furl" src="http://www.numinose.com/wp-content/plugins/social-dropdown/icons/furl.png" /></a><a class="link" rel="nofollow" title="Google" href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http://www.numinose.com/2008-07-16/slow-motion-youtube-videos-alltagsszenen-von-brainiac-umgesetzt/&amp;title=Slow Motion Youtube Videos &acirc;�� Alltagsszenen von Brainiac umgesetzt"><img alt="Google" src="http://www.numinose.com/wp-content/plugins/social-dropdown/icons/google.png" /></a><a class="link" rel="nofollow" title="Mister Wong" href="http://www.mister-wong.com/index.php?action=addurl&amp;bm_url=http://www.numinose.com/2008-07-16/slow-motion-youtube-videos-alltagsszenen-von-brainiac-umgesetzt/&amp;bm_description=Slow Motion Youtube Videos &acirc;�� Alltagsszenen von Brainiac umgesetzt"><img alt="Mister Wong" src="http://www.numinose.com/wp-content/plugins/social-dropdown/icons/misterwong.png" /></a><a class="link" rel="nofollow" title="Rojo" href="http://www.rojo.com/add-subscription/?resource=http://www.numinose.com/2008-07-16/slow-motion-youtube-videos-alltagsszenen-von-brainiac-umgesetzt/"><img alt="Rojo" src="http://www.numinose.com/wp-content/plugins/social-dropdown/icons/rojo.png" /></a><a class="link" rel="nofollow" title="Spurl" href="http://www.spurl.net/spurl.php?url=http://www.numinose.com/2008-07-16/slow-motion-youtube-videos-alltagsszenen-von-brainiac-umgesetzt/&amp;title=Slow Motion Youtube Videos &acirc;�� Alltagsszenen von Brainiac umgesetzt"><img alt="Spurl" src="http://www.numinose.com/wp-content/plugins/social-dropdown/icons/spurl.png" /></a><a class="link" rel="nofollow" title="Technorati" href="http://www.technorati.com/faves?add=http://www.numinose.com/2008-07-16/slow-motion-youtube-videos-alltagsszenen-von-brainiac-umgesetzt/"><img alt="Technorati" src="http://www.numinose.com/wp-content/plugins/social-dropdown/icons/technorati.png" /></a><a class="link" rel="nofollow" title="Yahoo" href="http://myweb2.search.yahoo.com/myresults/bookmarklet?t=Slow Motion Youtube Videos &acirc;�� Alltagsszenen von Brainiac umgesetzt&amp;u=http://www.numinose.com/2008-07-16/slow-motion-youtube-videos-alltagsszenen-von-brainiac-umgesetzt/"><img alt="Yahoo" src="http://www.numinose.com/wp-content/plugins/social-dropdown/icons/yahoo.png" /></a></p></div>


    Und wenn du mal scrollst, findest du massenweise
    �� also nicht korrekt UTF-8 Ersetzungen. Was oder wer das genau macht, muß du wissen.

    Ok, das mit der option ist eine andere Baustelle, sorry (kommt von einem der vielen multi-ligual Plugins, die ich so teste).
    Die zusätzliche Datei mit der globalen Variablen ist genauso vorgesehen, wie von dir beschrieben. Allerdings ändert das nichts and der Tatsache, das wp-admin.css und rtl.css (nur als Beispiel) gemeinsam geladen werden müssen, wenn RTL nötig ist. Denn die rtl's sind nun mal nur die Korrektur zur Browserspiegelung der originalen css bei dir="rtl" Angabe.
    Und sorry, "arabisch" war nur als Beispiel für eine RTL Sprache von mir gewählt worden.

    Eine von vielen verschiedenen Möglichkeiten beruht auf der Benutzung von prototype.js Bibliothek. Man bringt per

    PHP
    function init_scripts()
    {
        wp_enqueue_script('prototype');
    }
    
    
    if (function_exists('add_action')) {
        add_action('init', init_scripts);
    }


    in der functions.php zum Beispiel WP dazu, prototype zu benutzen. In den Links des Calendars brauchts du eine Javascript Funktion bei onclick, die folgendes macht:

    Code
    function oncalclick-prev() {
    new Ajax.Updater('calendar-div', '/url-calendar', {
      parameters: { direction: 'prev' ) }
    });
    }


    Dann wird der <div> mit ID = "calendar-div" unter Benutzung der URL "/url-calendar" mit den Aufrufparameter direction=prev aufgerufen.
    Analog geht das für next.

    Hier die Docu von Prototype: Prototype JavaScript framework: Ajax.Ajax.Updater

    Man kann das auch mir jQuery, Sacks oder sonstigem machen, dies ist nur eine Richtungsweisung, wie man das angehen kann.

    Wie auch immer der direkt in den Beitragstext gekommen ist:


    Der scheint sich nicht in eine Themedatei integriert zu haben, sondern sieht wie ein verstecktes Plugin aus, was deine Beiträge manipuliert.

    Eine Reparatur ist aufwendig, denn der dann auch nötige Update auf mindestens WP 2.5.1 krempelt einiges in der DB um (Internas haben sich sehr stark geändert). Das bräuchtest du jemanden, der dir das auf Vordermann bringt.

    Kann ich unter Übersetzung verstehen, dass du ein eigenes *.mo für WP selbst übersetzt hast ? Dann solltest du aber was zu den Stylesheets wissen, deshalb mal hier der Quelltest Anfang meines arabischen Dashboards (RTL) mit [COLOR=Red]roten [/COLOR]Markierungen:

    Es werden immer die normalen css (wp-admin.css) und die right-to-left css (rtl.css) beide geladen ! Die entsprechenden *-rtl.css Dateien sind nur dazu da, die Spiegelung, die der Browser bei dir="rtl" selbst mit der normalen css Datei (teilweise fehlerhaft) macht, zu korrigieren.
    Es ist also nicht damit getan, nur die rtl's zu laden, das braucht immer beide Versionen der css im RTL Falle. Das gilt dann genauso für Themes, die müssen RTL auch aktiv unterstützen können.

    Wenn du nur mit RTL Blogs arbeiten willst, musst du in der wp_option Tabelle, den Eintrag "text_direction" auf "rtl" stellen und deine *.mo Datei in der wp-config.php angeben. Das war's dann schon, dann macht das WP für dich korrekt.

    Mein Plugin nimmt wie gesagt das für den Benutzer bereits über die Anmeldung ab, da muss nix in der DB gepatcht werden und schaltet je nach vorhandener (ausgewählter) Sprache dann korrekt in RTL, wenn die Sprache das braucht.