Beiträge von marX

    Auch hier ist die Trennlinie in #111 dargestellt, also korrekt wie du es willst (<link stylesheet> mit <style> und deinen Styles von oben ersetzt). Allerdings sind in dem HTML ein paar Fehler, die solltest du zunächst mal beheben. Wirf den HTML-Quelltext z.B. mal hier rein:
    :arrow: The W3C Markup Validation Service
    Das liefert mir aktuell 6 Fehler + 20 Warnungen.

    In welchem Browser schaust du die Seite an? Ich bin hier mit FF 3.0.6 unter WinXP unterwegs...

    Für die Kategorien in der category.php vor dem Loop einfügen:

    PHP
    <?php query_posts($query_string . "&year=" . date('Y')); ?>


    Hast du keine category.php, dann leg dir entweder eine aus der archive.php an, oder bau das in die archive.php so ein:

    PHP
    <?php
    if ( is_category() ) {
      query_posts($query_string . "&year=" . date('Y'));
    } ?>


    (analog index.php, falls du auch keine archive.php hast -> Template-Hierachie)

    Für die Archive wirds schwieriger. Da würde mir nur der Workaround einfallen, vorher in einem Extra-Loop die Anzahl der Posts in diesem Jahr zu ermitteln und anschließend diese Anzahl als Offset für die Haupt-Query anzugeben. Aber vielleicht gehts auch eleganter...

    Die XHTML-Änderungen (leere Elemente) solltest du schon noch umsetzen. ;-)

    .post-wrapper wird gefloatet:

    Code
    .post-wrapper {[B]style.css (line 299)[/B]
    [COLOR="Red"]float:left;[/COLOR]
    margin-bottom:0;
    margin-left:-20px;
    padding:10px 30px 0;
    width:593px;
    }


    Nimmst du das raus, dann stimmt die Anzeige. Zumindest im firefox, müssest mal prüfen ob es dadurch in anderen Browsern zu Darstellungsproblemen kommt.

    Geht das auch mit get_posts?


    Sollte. setup_postdata() muss vermutlich gerufen werden. Im Zweifelsfall würde ich auf WP_Query() ausweichen, Funktionalität ist ja gleich.

    Zitat

    Und nochmal zum Verständnis.
    Im Schlüssel kommt dann irgendwas rein und der Wert ist dann css-code?


    Jupp. Das "irgendwas" ist natürlich immer gleich ("key"). In meinem Beispiel oben eben "cssclass".

    Die Custom Fields nimmst du, wenn du die Artikel wahlfrei kennzeichnen willst. Dann einfach ein benutzerdefiniertes Feld anlegen, z.B. mit dem Schlüssel "cssclass" und das dann im Loop ausgeben:

    PHP
    <div class="<?php echo get_post_meta($post-ID, "cssclass", true) ?>">


    Wenn du andere Möglichkeiten hast um die Posts zu kennzeichen (z.B. über die Kategorie), dann brauchst du auch keine benutzerdefinierten Felder. ;-)

    Wie gesagt, normal müsstest du Thumbnails erstellt bekommen, wenn alles korrekt eingestellt ist. Sowohl bei der interen Mediengalerie als auch bei den bekannten Galerie-Plugins. Diese Thumbs kannst du verwenden. Die Vergabe des Dateinamens müsste nach einem Muster erfolgen, d.h wenn du den Dateinamen des großen Bilds hast kannst du daraus den des Thumbnails ermitteln.

    Wenn keine Thumbnails erstellt werden, dann ist möglcherweise mit der Konfiguration von PHP was faul. Dann wirds vermutlich auch schwierig, Thumbnails auf anderem Weg zu erstellen.

    Ok, hier mal der Html-Code vom Footer


    Das ist keine HTML-Seite, das ist ein HTML-Fragment, was zudem noch PHP-Code enthält. Das reicht nicht zum Debuggen. Wenn ich das Fragment und dein CSS verwende, dann hat der Balken die Farbe #111111 - wie gewünscht. Der "Fehler" muss also irgendwo im Rest des gerenderten HTML zu suchen sein.

    ich stecke nicht so tief im WP Core Design drin - aber logisch wäre den Zugriff auf die Datenbank in einer Funktion bzw. Include zu bündeln und die Pipeline dann dort abzuarbeiten...damit sollten solche Probleme eigentlich ausgeschlossen sein...


    Programmierst du Webanwendungen? So einfach ist das da leider nicht, eine globale Pipe zu schaffen und konkurrierende Zugriffe von verschiedenen Clients zu organisieren. Wie gesagt, das ist (IMHO) Aufgabe des DBMS, die Anfragen (hier zu queuen und konkurriende Zugriffe zu vermeiden. Transaktionen wären da ein Ansatz der mir einfallen würde. Aber egal, das wird hier off-topic. Du kannst ja gerne den Entwicklern einen Tipp geben. :-)

    Diskutiert wirds übrigens:
    Using Alternative Databases WordPress Codex

    Und auch ein Plugin für die Nutzung von PDO gibts (getestet bis 2.5):
    WordPress › PDO (SQLite) For Wordpress WordPress Plugins

    Also Ansätze sind da, und vielleicht wird ja in Zukunft eine andere Datenbankabstraktion in WP eingeführt. :-)

    WP verwendet in der Standardeinstellung die Zeichencodierung UTF-8. Nutzt du deutsche Umlaute in deinem Template-Dateien, dann müssen diese ebenfalls UTF-8-codiert abgelegt werden (ohne BOM). Falls dein Blog die Zeichencodierung ISO-Latin-1 nutzt, dann müssen analog die Templates ebenfalls ISO-Latin-1-codiert sein.

    Das wäre möglicherweise ein Ansatzpunkt für die WP Entwickler, womit man die Stabilität von Wordpress noch verbessern könnte...


    WordPress Trac - Trac
    WordPress › WordPress Ideas

    Zitat

    Übrigens habe ich auch herausgefunden, wie die Datenbank beschädigt wurde - dies geschah durch zeitgleich Zugriff auf einen Datensatz, beim Editieren eines Artikels und gleichzeitigem Zugriff auf (möglicherweise denselben) einen Artikel durch ein automatisiertes Update eines rss-feeds.


    Wobei das IMHO eher Sache des DBMS ist, Transaktionssicherheit und so. Gut, die Anwendung muss dann natürlich ebenfalls Transaktionen verwenden, ist klar. *hust* PDO! *hust* :-D

    Zitat

    p.s. vielen Dank an marX :-D


    Bitte bitte. :-)

    Probier mal so:

    PHP
    <div class="infobox">
      <hr width="593[COLOR="Red"][del]px[/del][/COLOR]" size="2" [COLOR="#ff0000"][B]/[/B][/COLOR]>
      Kategorie: <?php the_category(' '); ?> <br[COLOR="#ff0000"][b] /[/b][/COLOR]>
      <?php if (get_the_tags()) the_tags(); ?> <br[COLOR="#ff0000"][b] /[/b][/COLOR]>
      Trackback URL: <a href="<?php trackback_url([COLOR="#ff0000"][del]display[/del][B][I]true[/I][/B][/COLOR]); ?>"> <?php trackback_url([COLOR="#ff0000"][del]display[/del][B][I]true[/I][/B][/COLOR]); ?> </a>
    </div>


    Ansonsten sieht das weitesgehend korrekt aus, auf den 1. Blick. Dein Post-Footer ist noch falsch auskommentiert:

    Code
    <!-- <div class="post-footer">...</div> --[COLOR="#ff0000"][B]![/B][/COLOR]>


    Das 2. Ausrufezeichen am Ende ist zuviel.

    Habe noch etwas weiter gestöbert und folgenden Codeschnipsel gefunden:


    Mmh, direkte DB-Abfragen sind immer heikel. Kann ja sein, dass sich and er DB was ändert. Nur so als Hinweis.

    $user->user_url enthält die URL der Website, die der Autor in seinem Profil eingetragen hat. the_author_posts_link()sollte in die Richtung gehen, ufnktioniert aber natürlich nur im Artikelloop. So sieht das intern aus (2.7):

    PHP
    printf(
    		'<a href="%1$s" title="%2$s">%3$s</a>',
    		get_author_posts_url( $authordata->ID, $authordata->user_nicename ),
    		sprintf( __( 'Posts by %s' ), attribute_escape( get_the_author() ) ),
    		get_the_author()
    	);


    und

    PHP
    /**
     * Retrieve the URL to the author page of the author of the current post.
     *
     * @since 2.1.0
     * @uses $wp_rewrite WP_Rewrite
     * @return string The URL to the author's page.
     */
    function get_author_posts_url($author_id, $author_nicename = '') {
     //...
    }


    Damit solltest du dir den link problemlos selbst zusammenbasteln können. $authordata hast du ja - $user bei dir.

    naja - alle Postings verschieben - da bin ich alt und grau....


    Quatsch. :-) Kat 11 zur Standardkategorie machen, Kategorie 3 löschen und dabei Postings in die Standardkategorie (#11) verschieben lassen - fertig.

    Zitat

    Nur den Aufwand habe ich gescheut, zumal mir vor allem im Moment noch nicht ganz klar ist, ob es reicht eine Tabelle (die WP_posts) dann mit den neuen Cat-id´s upzudaten oder ob da noch mehr dran hängt....


    Nein, die Zuordnung erfolgt nicht mehr über wp_posts.post_category, da ja mehrere Kategorien (und Tags) zugeordnet werden können. Die Zuordnung erfolgt über die Tabelle wp_term_relationships, die Kategorien selbst stehen in wp_terms bzw. wp_term_taxonomy.

    Siehe: Database Description WordPress Codex

    Also ich hätte es so gemacht:
    Kategorie 11 neu angelegt, anderer Name etc. Kategorie 3 gelöscht und dabei alle Postings in Kategorie 11 verschoben. Kategorie 11 umbenennen (Slug und Klarname). Gehts dann wieder, oder tritt der Fehler dann wieder auf? (Oder hast du das so gemacht und ich habs nur nicht richtig nachvollzogen? :-)) Wenn das nicht klappt, dannn hab ich leider auch keine Idee mehr, würde aber auf Doppeldeutigkeiten mit anderen Slugs tippen...