Title: Różne background w kategoriach
Last modified: 2016-08-05

---

# Różne background w kategoriach

 *  Rozwiązano [edrol](https://pl.wordpress.org/support/users/edrol/)
 * (@edrol)
 * [15 lat, 9 miesięcy temu](https://pl.wordpress.org/support/topic/rozne-background-w-kategoriach/)
 * Czesc,
 * czy jest jakiś sposób na ustawienie różnych grafik jako tło dla kategorii za 
   pomocą stylów css?
 * Chodzi o to żeby wybrane prze zemnie kategorie miały inne tło od tego na stronie
   głównej.
 * Stworzyłem szablony dla niektórych kategorii ale ustalony tam background albo
   jest ładowany na obraz tła (ustawiony w css jako tło dla body) albo ładuje się„
   pod” nim.
    W pierwszym przypadku gość na stronie musi załadować oba tła aby zobaczyć
   tło kategorii, a w drugim mimo załadowania obu plików tła, widać tylko tło „główne”.
 * Dlatego zwracam się do was z prośbą o doradzenie jak ustawić w pliku style.css
   różne pliki tła dla wybranych kategorii i całej strony.
 * Będę bardzo wdzięczny jeśli ktoś wytłumaczy mi to w zrozumiały sposób 🙂

Zobacz 12 odpowiedzi - od 1 do 12 (z 12 łącznie)

 *  Moderator [amistad18](https://pl.wordpress.org/support/users/amistad18/)
 * (@amistad18)
 * [15 lat, 9 miesięcy temu](https://pl.wordpress.org/support/topic/rozne-background-w-kategoriach/#post-4299)
 * ’Tło w kategoriach’ – zgaduj zgadula co dokładnie masz na myśli. Ogólnie, najłatwiej
   by było zrobić tak, że jakiś element który ma tło, ma jakieś id czy kasę, będzie
   dostawał dodatkową klasę związaną z kategorią, np, z jej nazwą czy z ID, i potem
   będziesz mógł w plikach css kombinować z różnymi tłami – i dziedziczenie załatwi
   sprawę pobierania dwóch różnych obrazków tła. Lektura która Ci się powinna przydać
   do tego:
 * [http://codex.wordpress.org/Function_Reference/is_category](http://codex.wordpress.org/Function_Reference/is_category)
   
   [http://codex.wordpress.org/Function_Reference/single_cat_title](http://codex.wordpress.org/Function_Reference/single_cat_title)
 *  Twórca wątku [edrol](https://pl.wordpress.org/support/users/edrol/)
 * (@edrol)
 * [15 lat, 9 miesięcy temu](https://pl.wordpress.org/support/topic/rozne-background-w-kategoriach/#post-4321)
 * w pliku style.css mam cos takiego:
 *     ```
       body {
   
       background: #000 url( hxxp://mysite.com/costam.jpg ) top left repeat-x;
       background-attachment: fixed; 
   
       }
       ```
   
 * Dzieki temu cala strona ma tło. Ale jak ustawić is_category w css tak aby wybrana
   kategoria miała inne tło niż `hxxp://mysite.com/costam.jpg` ?
 *  Moderator [amistad18](https://pl.wordpress.org/support/users/amistad18/)
 * (@amistad18)
 * [15 lat, 9 miesięcy temu](https://pl.wordpress.org/support/topic/rozne-background-w-kategoriach/#post-4328)
 * is_category() to jest funkcja WP, napisana w php, i zadziała tylko w kodzie strony,
   a nie w kodzie css – wstawiasz ją w pliku header.php
 *  Twórca wątku [edrol](https://pl.wordpress.org/support/users/edrol/)
 * (@edrol)
 * [15 lat, 8 miesięcy temu](https://pl.wordpress.org/support/topic/rozne-background-w-kategoriach/#post-4331)
 * Znalazłem taki i podobne kody jak poniżej, dostosowałem go aby dla kategorii 
   467 i 900 pokazywane było inne tło na stronie. Jednak gdy wstawiam go na końcu
   header.php strona zgłasza błąd.
 *     ```
       <?php if (is_category('467')) { ?>
       <?php background url(http://images29.fotosik.pl/15/ed9bba73eb739549.jpg) top left repeat-x; background-attachment: fixed; ?>
       <?php } elseif (is_category('900')) { ?>
       <?php background url(http://images29.fotosik.pl/15/ed9bba73eb739549.jpg) top left repeat-x; background-attachment: fixed; ?>
       <?php } else { ?>
       <?php background url(http://img715.imageshack.us/img715/1065/backgrounduks.jpg) top left repeat-x; background-attachment: fixed; ?>
       <?php } ?>
       ```
   
 * Próbowałem jeszcze wstawiać body {
 *     ```
       <?php if (is_category('467')) <strong>body</strong> { ?>
       <?php background url(http://images29.fotosik.pl/15/ed9bba73eb739549.jpg) top left repeat-x; background-attachment: fixed; ?>
       ```
   
 * ale to tez nie jest to. Kod ciągle nie działa. Czy mógłbyś mnie poprawić co robię
   źle?
 *  Moderator [amistad18](https://pl.wordpress.org/support/users/amistad18/)
 * (@amistad18)
 * [15 lat, 8 miesięcy temu](https://pl.wordpress.org/support/topic/rozne-background-w-kategoriach/#post-4333)
 * Hmm, nie znasz podstawowej składni php. Podaj adres strony, oraz linki do różnych
   obrazków tła – już przygotowanych.
 *  Twórca wątku [edrol](https://pl.wordpress.org/support/users/edrol/)
 * (@edrol)
 * [15 lat, 8 miesięcy temu](https://pl.wordpress.org/support/topic/rozne-background-w-kategoriach/#post-4348)
 * adres strony to hxxp://eziny.net
 * a tło dla głównej strony to :
 * `hxxp://img715.imageshack.us/img715/1065/backgrounduks.jpg`
 * a dla kategorii:
 * `hxxp://img218.imageshack.us/img218/8751/thewestbackground1.jpg`
 *  Moderator [amistad18](https://pl.wordpress.org/support/users/amistad18/)
 * (@amistad18)
 * [15 lat, 8 miesięcy temu](https://pl.wordpress.org/support/topic/rozne-background-w-kategoriach/#post-4357)
 * A więc to będzie mniej więcej taki kod:
 *     ```
       <body id="cos_tam" class="xxx<?php if(is_category(467)){ echo " category_467"; } ?>">
       ```
   
 * I w css jeszcze coś takiego:
 *     ```
       .category_467 {
          background: url('img/thewestbackground1.jpg') !important;
       }
       ```
   
 * Oczywiście plik tła musi być na tym samym serwerze co strona, najlepiej w katalogu
   z szablonem, a nie na zewnętrznym serwerze.
 *  Twórca wątku [edrol](https://pl.wordpress.org/support/users/edrol/)
 * (@edrol)
 * [15 lat, 8 miesięcy temu](https://pl.wordpress.org/support/topic/rozne-background-w-kategoriach/#post-4359)
 * W header.php mam:
 * `<body <?php body_class() ?> id="bp-default">`
 * zmieniam to na:
 * `<body id="bp-default" class="xxx<?php if(is_category(467)){ echo " category_467"}?
   >">`
 * i dostaje taki błąd:
 * `Parse error: syntax error, unexpected '}', expecting ',' or ';' in .../header.
   php on line 42`
 * jaki może być tego powód?
 *  [Rascals](https://pl.wordpress.org/support/users/rascals/)
 * (@rascals)
 * [15 lat, 8 miesięcy temu](https://pl.wordpress.org/support/topic/rozne-background-w-kategoriach/#post-4382)
 * Możesz też to zrobić w ten sposób (działa na pewno). WordPress będzie za każdym
   razem sprawdzał czy aktualna strona jest kategorią, jeżeli jest to doda klasę
   np. 'category_2′ do znacznika <body>. Tak jak wcześniej było napisane do CSS 
   musisz napisać jeszcze regułę: .category_2 {}
 *     ```
       <?php
       if (is_category()) {
       	$cat_obj = $wp_query->get_queried_object();
           $cat_id = $cat_obj->term_id;
       	$cat = 'category_' . $cat_id;
       }
       ?>
       <body id="bp-default" class="<?php echo $cat; ?>">
       ```
   
 *  Moderator [amistad18](https://pl.wordpress.org/support/users/amistad18/)
 * (@amistad18)
 * [15 lat, 8 miesięcy temu](https://pl.wordpress.org/support/topic/rozne-background-w-kategoriach/#post-4391)
 * Mój błąd, nie zauważyłem że zapomniałem `;` za echo. Ale to nawet dobrze, gdyż
   od razu zapoznałem się z funkcją `body_class()` – jest genialna do tego co potrzebujesz
   😉 , więc ją zostaw, dokładnie tak jak było. Wtedy przykładowe klasy jakie ma`
   <body>` :
    `archive category category-thewestporadniki`
 * dla linka:
    `eziny.net/category/thewest/thewest_poradniki/`
 * Więc zostaje tylko dopisać dany kod do css, w tym przypadku, zmiana tła dla tej
   kategorii, to:
 *     ```
       .category-thewestporadniki {
          background: url('img/thewestbackground1.jpg') !important;
       }
       ```
   
 *  Twórca wątku [edrol](https://pl.wordpress.org/support/users/edrol/)
 * (@edrol)
 * [15 lat, 8 miesięcy temu](https://pl.wordpress.org/support/topic/rozne-background-w-kategoriach/#post-4426)
 * Dzięki chłopaki za pomoc! Oba sposoby działają bardzo dobrze. Zdecydowałem się
   zastosować do porady amistad18 i oprzeć css na body_class(), ponieważ jest najmniej„
   inwazyjny”.
 * Miałem tylko problem z umiejscowieniem grafiki na background. Z jakiegoś powodu`
   img/thewestbackground1.jpg` nie działał. Ale gry wrzuciłem grafikę do głównego
   katalogu z szablonem tzn. `thewestbackground1.jpg` działa bez problemu.
 *  Twórca wątku [edrol](https://pl.wordpress.org/support/users/edrol/)
 * (@edrol)
 * [15 lat, 8 miesięcy temu](https://pl.wordpress.org/support/topic/rozne-background-w-kategoriach/#post-4427)
 * Jednak za szybko pochwaliłem `body_class()`, ponieważ okazuje się, że występuje
   problem z tłem w podkategoriach.

Zobacz 12 odpowiedzi - od 1 do 12 (z 12 łącznie)

 Temat ‘Różne background w kategoriach’ jest zamknięty na nowe odpowiedzi.

## Tagi

 * [background](https://pl.wordpress.org/support/topic-tag/background/)
 * [CSS](https://pl.wordpress.org/support/topic-tag/css/)
 * [is_category](https://pl.wordpress.org/support/topic-tag/is_category/)
 * [kategoria](https://pl.wordpress.org/support/topic-tag/kategoria/)
 * [kategorie](https://pl.wordpress.org/support/topic-tag/kategorie/)
 * [tło](https://pl.wordpress.org/support/topic-tag/tlo/)

 * W: [Motywy](https://pl.wordpress.org/support/forum/motywy-i-szablony/)
 * 12 odpowiedzi
 * 3 uczestnik
 * Ostatnia odpowiedź od: [edrol](https://pl.wordpress.org/support/users/edrol/)
 * Ostatnia aktywność: [15 lat, 8 miesięcy temu](https://pl.wordpress.org/support/topic/rozne-background-w-kategoriach/#post-4427)
 * Status: rozwiązane

## Tematy

### Najbardziej popularne tematy

### Tematy bez odpowiedzi

### Wątki niezwiązane ze wsparciem

### Rozwiązane wątki

### Nierozwiązane tematy

### Wszystkie tematy
