Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] IF w zależności od innego tagu/funkcji., Sprawdzenie, czy tag zwraca dane (Wordpress)
dolby
post 6.03.2008, 00:05:22
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 3.08.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Witam serdecznie,

Niestety jestem prawie zielony w PHP, cały pół dnia szukam, kombinuje i niestety nie mogę osiągnąć zamierzonego celu, a mianowicie:

System Wordpress oferuje taki tag: the_author_description()
Wyświetla on opis, który użytkownik ustawia sobie w profilu.

Tag ten (opis) otoczyłem XHTML'em, więc wygląda on tak:
  1. <p>O sobie:
  2. <q cite="<?php the_author(); ?>">
  3. <?php the_author_description(); ?>
  4. </q>.</p>


Teraz cała zabawa polega na tym, aby PHP'ek po stwierdzeniu, że tag the_author_description() jest pusty , w ogóle nic nie wyświetlał (żadnego
  1. <p>O sobie:
  2. <q cite="<?php the_author(); ?>">
  3. <?php the_author_description(); ?>
  4. </q>.</p>
)


Skleciłem coś w rodzaju:

  1. <?php if(the_author_description() != NULL){ ?>
  2. <p>O sobie: <q cite="<?php the_author(); ?>">
  3. <?php the_author_description() ?>
  4. </q>.</p>
  5. <?php }; ?>


Niestety, ani w takiej postaci, ani tysiącu innych kombinacji, które wytworzyłem albo jest tak, ze PHP wyświetla sam opis (czyli tylko efekt działania the_author_description(), beż otaczającego go XHTML'a), albo w ogóle wywala błąd parser.

Nie mam już sił ani pomysłu, jak to powinno być napisane... a chciałbym jednak, żeby cytat liniowy wyświetlał się TYLKO wtedy, gdy opis nie jest pusty.

Proszę zatem mądrzejszego ode mnie o pomoc w w/w problemie - w razie potrzeby podam dodatkowe informacje.

Pozdrawiam i przepraszam za lamerskie pytanie!

Ten post edytował dolby 6.03.2008, 00:08:45
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
legorek
post 6.03.2008, 00:56:16
Post #2





Grupa: Zarejestrowani
Postów: 411
Pomógł: 35
Dołączył: 27.06.2004
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Nie możesz zrobić tego w ten sposób, ponieważ mniemam, że funkcja the_author_description() nie zwraca wartości tylko wypisuje ją na wyjście. Nie znam wordpress'a, ale taka funkcja nie zacheciłaby mnie do jego używania. Musisz przebudowac tę funkcję, albo zrobić to metodą niezbyt elegancką metodą

  1. <?php
  2. the_author_description();
  3. $the_author_description = ob_get_contents()
  4. if (!empty($the_author_description)):
  5. ?>
  6. <p>O sobie:
  7. <q cite="<?php the_author(); ?>">
  8. <?= $the_author_description ?>
  9. </q>.</p>
  10. <?php
  11. endif;


Ten post edytował legorek 6.03.2008, 00:57:35


--------------------
Go to the top of the page
+Quote Post
dolby
post 6.03.2008, 01:47:31
Post #3





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 3.08.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Wordpress nie jest zły, coraz większa ilość tagów jest modernizowana i pozwala na użycie wielu argumentów (?), co z kolei pozwala z nimi robić cuda... niestety te są "stare" i jest jak jest :/

Super, wszystko śmiga aż miło! smile.gif

Dzięki wielkie za pomoc (kod) smile.gif

Temat do zamknięcia.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 09:04