WordPress: jak zmienić tło w co drugim wpisie

Na polskim forum WordPressa użytkownik kujdak zadał pytanie

Mam skórkę Twenty Eleven ten. chciałem wyróżnić posty – co drugi o np. szarym tle. porsze o pomoc jak to zrobic?

Odpowiedź dotyczy dowolne skórki i jest przewrotna. Wystarczy dodać odpowiednią klasę i ją wyróżnić.

A więc jak dodać klasę?

add_filter( 'post_class', 'iworks_even_odd_post_class_filter' );
 
$post_count = 1;
 
function iworks_even_odd_post_class_filter( $class )
{
    global $post_count;
    $class[] = $post_count++ % 2? 'odd':'even';
    return $class;
}

Oraz dodać odpowiedni wygląd w pliku style.css:

.hentry.odd
{
    background-color:red;
}

13 odpowiedzi do “WordPress: jak zmienić tło w co drugim wpisie”

  1. ja bym to zrobił za pomocą css i nth-child(), no ale jak ma być cross browser to rozwiązanie powyżej jest ok.

    btw i tak w większości projektów używam selectivizr: http://selectivizr.com/ więc rozwiązanie w css w zasadzie jest cross browser ;)

  2. Powinno być .hentry.odd a nie jak napisałeś .hetry.odd zakładam że to była tylko literówka ;)

    Pozdrawiam i Wesołych Świąt.

  3. Mam prosty theme pod wordpressem, który robiłem od podstaw (nie ma plików funkcji i innych różnych plików .php odpowiedzialnych za wyświetlanie postów, jak w TwentyEleven).

    Jak włączam theme TwentyE to to działa, na moim nie. Jakaś sugestia co może być nie tak?

    Z góry dzięki ;)

  4. Poradziłem sobie za pomocą prostego licznika postów oraz sprawdzaniem czy licznik ma wartość parzystą czy nie ;)

  5. @Łukasz: we wpisie jest właśnie licznik postów i klasy „parzysta” i „nieparzysta”, tylko że sposób wypisywania do samego szablonu jest związany z tym jak trzeba pisać motyw. Jeżeli ten kod u Ciebie nie działa, to znaczy, że ma źle napisany motyw lub taki był Twój wybór.

  6. Witam,

    jak dodać obrazek w każdym poście inny , chodzi mi oczywiście o obrazek pod treścią a nie o background strony. Id strony, wszedzie szczątkowe odpowiedzi. Pluginy typu post backgrounds nie maja racji bytu. Szablon Workalite portfolio.

    Z góry dziękuję i pozdrawiam.

  7. @Rafał: nie bardzo rozumiem Twoje pytanie, ponieważ Wp natywnie obsługuje „Ikonę wpisu” czyli, obrazek, który można przypisać do każdego wpisu.

    Taką funkcjonalność musi wspierać motyw lub wtyczki.

  8. @Rafał: pomagam na tej stronie sugerując gdzie szukać. Za poprawianie konkretnego kodu biorę już pieniądze, więc mogę to poprawić, ale za wynagrodzenie.

Możliwość komentowania jest wyłączona.

Jeżeli chcesz skomentować, napisz mail na adres marcin w domenie strony na której jesteś. Dodam twoj komentarz.