Diskuze: Úprava php v wordpressu - podmínka IF

PHP PHP Úprava php v wordpressu - podmínka IF American English version English version

Avatar
baalguss
Člen
Avatar
baalguss:

Pěkný den, poprosím Vás, zdali byste mi nedokázali poradit jak upravit php kód ve wordpressu. Používám pole Custom Fields označené jako "dostupnost", kam autor zadává textovou proměnnou typu dostupné, rezervované atd. V kódu stránky pak vypisuji jednoduše: <div class="dostup­nost"><?php echo get_field('dos­tupnost'); ?></div>. Vše funguje, ale protože pod class div prvku používám nějaké stylizační prvky, jako je barva pozadí nebo padding, je problém, když get_field('dos­tupnost') nic neobsahuje. Udělá se mi tam nepěkný čtvereček z div kaskádového stylu. Jak by šlo, prosím, rozšířit zápis v php o podmínku IF, aby v případě, že get_field('dos­tupnost') obsahuje jakýkoliv řetězec, tak se vypíše div a v opačném případě nikoliv?

Děkuji.

 
Odpovědět 9.3.2015 21:24
Avatar
Ori
Člen
Avatar
Odpovídá na baalguss
Ori:

s WP nerobil ale niečo na tento štýl

<?php if(get_field('dostupnost')) { ?>
<div class="dostupnost"><?php echo get_field('dostupnost'); ?></div>
<?php } ?>
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět  +1 9.3.2015 21:46
Avatar
Odpovídá na baalguss
Michal Šmahel (ceskyDJ):

Uděláš si podmínku, zda-li existuje dostupnost, pokud ne, do proměnné $dosskryt si ulož "skryt". Do divu přidáš class="" a do toho si necháš vypsat proměnnou $doszobraz.

Kdyby náhodou:

//Do PHP třidy (nebo jak se tomu ve WP říká)
$dosskryt = ""; //Defaultně nebude mít div žádnou třídu
if (empty($dostupnost)) {
    $dosskryt = "skryt"; //Nastavíme třídu skrýt
}

//Do HTML
<div class="<?php $dosskryt ?>">
.
.
.
</div>

Není tam zajištěn výpis té proměnné ani přesun mezi soubory, jedná se pouze o nápovědu, jak to udělat.

Nahoru Odpovědět 9.3.2015 21:49
Nejdůležitější je motivace, ovšem musí být doprovázena činy.
Avatar
Odpovídá na Ori
Michal Šmahel (ceskyDJ):

Jaj, já to napsal ale složitě :D.

Nahoru Odpovědět 9.3.2015 21:51
Nejdůležitější je motivace, ovšem musí být doprovázena činy.
Avatar
Ori
Člen
Avatar
Odpovídá na Michal Šmahel (ceskyDJ)
Ori:

tak to si teda veru napísal :D

 
Nahoru Odpovědět 9.3.2015 21:53
Avatar
Odpovídá na Ori
Michal Šmahel (ceskyDJ):

A máš to trochu divoké, muselo by to být:

<?php
if(!empty(get_field('dostupnost') {
    echo "
        <div>"
            . get_field('dostupnost') .
       " </div>
    ";
}
?>
Nahoru Odpovědět 9.3.2015 21:55
Nejdůležitější je motivace, ovšem musí být doprovázena činy.
Avatar
Odpovídá na Ori
Michal Šmahel (ceskyDJ):

Já se přiznám, když vidím chybu na své straně, ale už jsem viděl lidi, kteří to tak nedělají... :)

Nahoru Odpovědět  -1 9.3.2015 21:57
Nejdůležitější je motivace, ovšem musí být doprovázena činy.
Avatar
Marek Vach
Člen
Avatar
Marek Vach:

Co popisuješ by mělo jít udělat naprosto jednoduše bez nějakého lítání mezi soubory. To co tam máš daný teď nahraď tímto.

<?php
$dostupnost = get_field('dostupnost');
if ($dostupnost == '') { //pokud nic neobsahuje
   echo ('');            //nic se nevypíše
}
else {
echo ('<div class="dostupnost">' .$dostupnost. '</div>');
}
?>

Kdyby to nefungovalo, dej vědět, opravíme to :)

Editováno 9.3.2015 23:34
 
Nahoru Odpovědět 9.3.2015 23:30
Avatar
baalguss
Člen
Avatar
baalguss:

Děkuji všem,
vzal jsem hned to první a hned to fungovalo :)

 
Nahoru Odpovědět  +1 10.3.2015 6:36
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 9 zpráv z 9.