Einzelne Wordpress-Posts mit CSS ansprechen

  • Hallo,


    und zwar bin ich jetzt schon eine Weile damit beschäftigt, herauszufinden, wie ich verschiedene Artikel mit CSS ansprechen kann.

    Mit dem folgenden Code lass ich meine Posts/Artikel auf meiner Seite anzeigen:

    PHP
    <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
        <h1><?php the_title(); ?></h1>
        <p><?php the_content(__('(more...)')); ?></p>
        <?php endwhile; else: ?>
        <p><?php _e('Sorry, no posts matched your criteria.'); ?></p><?php endif; ?>

    Nun werden jedoch alle Posts angezeigt und ich kann so auch nur alle Posts mit CSS anpassen, wenn ich z.B ne <div> um das PHP-Element setze und nicht einen bestimmten.

    Da ich die posts nicht untereinander einzeigen lassen möchte, sondern nebeneinander in verschiedenen DIV-boxen, benötige ich entsprechend Hilfe, wie ich einzelne Posts, die angezeigt werden, per CSS verändern/anpassen kann.

    Hoffe mir kann geholfen werden :-)
    Fikxi

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Hallo,

    danke erstmal für die Links. Schonmal sehr hilfreich.
    Nun sieht mein Code wie folgt aus:

    PHP
    <div id="content-<?php the_ID(); ?>" <?php post_class(); ?>>
        <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
        <h1><?php the_title(); ?></h1>
        <p><?php the_content(__('(more...)')); ?></p>
        <?php endwhile; else: ?>
        <p><?php _e('Sorry, no posts matched your criteria.'); ?></p><?php endif; ?>
        </div>

    Ausgeworfen wird nun folgendes:

    HTML
    <div id="content-41" class="post-41 post type-post status-publish format-standard hentry category-uncategorized">
            <h1>Test 01</h1>
        <p><p>This is Test 01</p>
    </p>
            <h1>Test 02</h1>
        <p><p>This is test 02</p>
    </p>
    </div>

    Nun kann ich zwar beide Post mit der div id 'content-41' ansprechen, jedoch
    nicht jeden einzelnd, so wie ich das gerne hätte. Wie kann ich meinen Code anpassen,
    sodass ich für beide einzelnen Posts eine ID und CLASS bekomme?

    Danke
    fikxi

  • Hab das ganze nun versucht innerhalb der while Schleife unterzubringen, mit mäßigem Erfolg:

    PHP
    <div id="content">
        <?php if (have_posts()) : while (have_posts()) : the_post(); post_class(); the_ID();?>
        <h1><?php the_title(); ?></h1>
        <p><?php the_content(__('(more...)')); ?></p>
        <?php endwhile; else: ?>
        <p><?php _e('Sorry, no posts matched your criteria.'); ?></p><?php endif; ?>
        </div>

    Wird zu:

    HTML
    <div id="content">
        class="post-41 post type-post status-publish format-standard hentry category-uncategorized"41    <h1>Post 01</h1>
        <p><p>This is Post 01</p></p>
        class="post-37 post type-post status-publish format-aside hentry category-uncategorized"37    <h1>Post 02</h1>
        <p><p>This is Post 02</p></p>
        </div>

    Wie zu sehen werden zwar classen eingesetzt, diese aber als normalen Text ausgeworfen und nicht eingebettet mit <>. Irgendwas muss ich ja dennoch falsch gemacht haben?

    Danke
    fikxi

  • PHP
    <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
        <div id="content-<?php the_ID(); ?>" <?php post_class(); ?> >
        <h1><?php the_title(); ?></h1>
        <p><?php the_content(__('(more...)')); ?></p>
        </div>
        <?php endwhile; else: ?>
        <p><?php _e('Sorry, no posts matched your criteria.'); ?></p><?php endif; ?>

    An so was hätte ich eher gedacht.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!