Beiträge von marX

    Parse error: syntax error, unexpected $end in /home/www/web44/html/wp-content/themes/default_de/index.php on line [B]56


    Das bedeutet, dass irgendwo ein Block nicht geschlossen wurde. Wie ich oben bereits sagte, wird das bei dir wahrscheinlich der if-Block sein.

    Zitat

    oder wenn ich das [COLOR=#000000][COLOR=#0000cc]<?php [/COLOR][COLOR=#006600]if ([/COLOR][COLOR=#0000cc]have_posts[/COLOR][COLOR=#006600]()) : [/COLOR][COLOR=#0000cc]?> weglasse[/COLOR][/COLOR], dann geht es auch.

    P.S.: Es ist sichergestellt, dass es in jeder Kategorie immer Posts gibt !


    Dann lass die if-Blöcke jeweils weg. Das "if ( have_posts() )" fragt ja nur ab, ob Beiträge vorhanden sind, und gibt im "else"-Zweig eine Meldung aus, falls keine gefunden wurden. Das könntest du in deinen Blöcken auch weglassen.

    [SIZE="1"]PS: Wie jottlieb schon sagte, verwende bitte die code/php-Tags um längere Codeblöcke hier im Forum zu kennzeichnen.[/SIZE]

    PHP
    <div class="featured">
      <?php $recent = new WP_Query("cat=5,17&showposts=1"); ?>
      <?php while($recent->have_posts()) : $recent->the_post();?>
        <?php if( in_category(5) && in_category(17) ) : ?>
          <h2><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h2>
          <?php the_content(__('Read the story &raquo;'));?>
          <div style="clear:both;"></div>
        <?php endif; ?>
      <?php endwhile; ?>
    </div>

    So müsste es klappen.
    Ansonsten versuchs mit query_posts() und ohne $recent (wie ich das oben bereits angedeutet hatte).

    Kann keine Fehldarstellungen erkennen (Opera 9, Firefox 2). Hast du jottliebs Tipp ausprobiert?

    Allerdings hast du noch ein paar HTML-Fehler in deiner Sidebar, die würde ich noch beheben: [Invalid] Markup Validation of http://www.tiefkultur.de/ - W3C Markup Validator

    (z.B. darf <h2> nicht innerhalb von <p> vorkommen, <li> muss immer in <ul>/<ol> eingeschlossen sein)

    Nachtrag wegen Überschneidung: Guck dir den Beitrag in der Codeansicht an, oder mit einem HTML-Validator (der oben verlinkte kann auch HTML-Fragmente - also z.B. einen einzelnen Beitrag - prüfen). Dann findest du den Fehler sicher schnell.

    in_category() ist das einzige.

    Irgendwo hier im Forum hat mal jemand eine Lösung gepostet, wie man In-Loop-Funktionen auch außerhalb des Loop (z.B. im Header) zum Laufen bekommt. Ich finds aber grade nicht. Musst dich mal durch die Forensuche wühlen.

    Da fehlen jeweils die endifs zu den if-Anweisungen.

    Wenn du davon ausgehst, dass du immer Beiträge in den Kategorien haben wirst, dann kannst du das ganze if...else...endif auch weglassen.

    Ansonsten ist "steigt der Server aus" keine tollen Fehlerbeschreibungen. WAS passiert? WAS hast du erwartet? Gibt der Server eine Fehlermeldung aus? Wenn ja welche? DU kannst es einem ganz schön schwer machen dir zu helfen... :-?

    Am einfachsten mit in den Container rein, also

    Code
    <div id="top-left-element">
      <img src="bild1.png" />
      <img src="bild2.png" />
    </div>

    Ausrichtung der Bilder, Abstände usw. kannst du dann per CSS formatieren:

    Code
    #top-left-element img {
    display:block;
    margin-bottom:10px;
    }


    (unmittelbar nach dem CSS-Code für den Container einbinden)

    Ja zum Beispiel ein <img>-Element. Oder Text. Oder Werbung. Oder oder oder... :)

    Wohin? Kommt drauf an. In eine Template-Datei, die immer aufgerufen wird, wenn der Button imm angezeigt werden soll. Beispiele wären header.php oder footer.php Beides hat Vor- und Nachteile. Wenn der Button "wichtig" ist, und schnell angezeigt werden soll, dann am besten in die header.php Auch hier z.B. ans Ende setzen.

    Ein externes Element (z.B. bei Einbindung externer Werbung per Banner oder gar JavaScript) würde ich den Code ans Ende der footer.php setzen (vor </body>!), damit die Ladezeit deiner Seite nicht beeinträchtigt wird, wenn die externe Seite mal "hängt".

    Nein, vor have_posts(). Der Ablauf ist eigentlich logisch: du holst dir mittels query_posts() die gewünschten Beiträge aus der Datenbank, danach prüfst du mit have_posts(), ob überhaupt Beiträge da sind. WENN welche da, dann gibst du die im Loop aus ("while have posts"), SONST gib eine Meldung aus.
    (Übersetze die groß geschriebenen Wörter ins Englische, dann hast du schon den halben PHP-Code: IF...ELSE...)

    Ansonsten hat ein wenig Try & Error (ausprobieren und Fehler umgehen) auch noch keinem geschadet. ;)

    Du solltest dir erstmal Grundkenntnisse in HTML und CSS sowie in WP-Template-Tags aneignen, bevor du dir ein eigenes Theme baust.

    id="cats" -> class="cats"
    Und dann entsprechend im CSS ändern (#cats -> .cats)

    Solche Konstrukte sind natürlich Blödsinn:

    HTML
    <a href="/schlager-boulevard"<div class="kategorie-start">Boulevard</div></a>


    Was heißt "es wird Schwachsinn" angezeigt? Der Code wird dir einige Male hintereinander die neuesten 3 Posts aus der Kategorie 14 anzeigen. Was möchtest du ausgegeben haben?

    Zur MySQL-Version gibts nen FAQ-Eintrag. Daran wirds aber nicht liegen, denke ich. Ich tippe eher auf ein Problem beim Upload. Ich würde das WP-Paket nochmal neu runterladen und komplett hochladen. Auch drauf achten, dass der richtige Transfermodus im FTP-Programm eingestellt ist.

    Wenn der Fehler immernoch auftritt mal in den Error-Logs nachgucken (wenn vorhanden, sonst den Hoster mal bitten, dass er dir die zusendet).

    Wenn die Seite PHP-Fehler enthält, dann bekommst du ne (mehr oder weniger) aussagekräftige Fehlermeldung.

    HTML-Fehler überprüfst du am besten mit einem HTML-Validator, z.B. The W3C Markup Validation Service oder lokal mit dem HTML-Validator-Addon für den Firefox.

    Auf nen groben Blick würde ich sagen, dass der Code okay ist. id="cat" tritt öfters auf, solltest du ne Class draus machen (IDs dürfen nur 1x im Dokument auftauchen). Den DOCTYPE würde ich noch ändern.

    Wenn du dir deine Frage von oben mal genau durchliest, dann kommst du auch selbst drauf:

    Zitat von stevie99

    Ich möchte nun gerne, dass "der normale Artikel ganz oben" nicht auf Start erscheint, sondern nur meine Programmierungen am "cat", also ab hier:
    (PHP-Code entfernt)

    Dann weißt du (aus anderen Postings hier), dass <div class="narrowcolumn"> stehen bleiben muss. Auch if have_posts() wäre wichtig. Danach kommt ein "normaler" Loop, erkennbar an while( have_posts() )... auch das kennst du, sonst hättest du nicht die weiteren Codes eintragen können. Danach folgt die Ausgabe der Navigationslinks (auch leicht erkennbar, z.B. an der class). Und jetzt kommt schon dein Code.

    So, jetzt solltest du wieder etwas voran kommen.

    the_id kann schonmal nicht funktionieren, weil das echo beinhaltet. Wenn schon also get_the_ID.


    Simmt natürlich... so viele Fehlermöglichkeiten in 1 Zeile Code... :twisted:
    (man sollte halt fremden Code nicht einfach unüberlegt übernehmen...)

    Nur noch mal zur Zusammenfassung:

    PHP
    <?php if( 41 != get_the_ID() ) : ?>
    dein HTML-Code
    <?php endif; ?>

    Ich hoffe jetzt stimmts... :D

    Mittels CSS kannst du Elemente frei platzieren. Du suchst möglicherweise sowas:

    Code
    #top-left-element {
    position:absolute;
    top:20px;
    left:20px;
    }
    HTML
    <div id="top-left-element">
    INHALT
    </div>

    2. Guck mal ob "Lightbox" deinen Wünschen entspricht (gibts auch als WP-Plugin).