• 20-08-2019, 13:53:16
    #1
    Merhabalar arkadaşlar, aşağıdaki kod yardımıyla, eklenti üzerinden seçtiğim postlar listelenebiliyor:

    <?php
    global $related;
    $rel = $related->show( get_the_ID(), true );
    
    foreach($rel as $val) {
    $new_val = (array)$val;
    $rel_last[] = array_merge($new_val, [ 'rating' => get_post_meta($new_val['ID'], 'ratings_users', true) ]);
    }
    
    usort($rel_last, function($a, $b) {
    return $b['rating'] <=> $a['rating'];
    });
    
    $rel = $rel_last;
    
    // Display the title and excerpt of each related post
    if( is_array( $rel ) && count( $rel ) > 0 ) {
    foreach ( $rel as $r ) {
    if ( is_array( $r ) ) {
    if ($r['post_status'] != 'trash') {
    setup_postdata( $r );
    echo '<div class="box-row">';
    echo '<div class="icon-wrapper"><a href="'.get_permalink( $r['ID'] ).'"><img src="'.get_the_post_thumbnail_url( $r['ID'] ).'" width="80" alt="'. get_the_post_thumbnail_caption( $r['ID'] ) .'"></a></div>';
    echo '<div class="text">';
    echo '<span class="licence free-bg float-right">';
    echo get_field('lisans_durumu_sec', $r['ID'])['label'];
    echo '</span>';
    echo '<h3 class="title" id="'.get_the_title( $r['ID'] ).'"><a href="'.get_permalink( $r['ID'] ).'">'.get_the_title( $r['ID'] ).'</a></h3>';
    echo '<p>'.get_the_excerpt($r['ID']).'</p>';
    echo '<div class="action"><a class="more-info float-right button-new" href="'.get_permalink( $r['ID'] ).'">Detayları Göster</a>';
    echo the_ratings('div', $r['ID']);
    echo '<div class="clear"></div>';
    echo '</div>';
    echo '</div>';
    echo '<div class="clear"></div>';
    echo '</div>';
    }
    }
    }
    wp_reset_postdata();
    }
    ?>
    Aşağıya alıntıladığım kısım sayesinde ise listelenen postların yanına özel alan değerleri çekiliyor. Seçtiğim özel alan ne ise onu yazdırıyor ve 3 tane özel alan seçeneği var: Ücretli, Ücretsiz ve Freemium şeklinde.
    Yine bunların değerlerinin php üzerinde tanımlı halleri: ucretsız, ucretli ve freemium şeklinde.

    echo '<span class="licence free-bg float-right">';
    echo get_field('lisans_durumu_sec', $r['ID'])['label'];
    echo '</span>';
    Şu şekilde yapmak istiyorum: eğer label değerleri ucretsiz veya fremium şeklinde ise yukarıdaki aynı şekilde göstersin fakat değeri ucretli ise:

    <span class="licence paid-bg">Ücretli</span>
    bu şekilde çıktı göstersin.

    Yani üstteki kodun sadece

    echo '<span class="licence free-bg float-right">';
    kısmında değişiklik yapacak

    Mümkün müdür şu an ki kodlamada bu?
  • 20-08-2019, 13:57:52
    #2
    if($label=='ucretsiz' || $label=='freemium')
    {
    <span class="licence paid-bg">Ücretli</span>}else{
    echo '<span class="licence free-bg float-right">';}

    Demek istediğin bu mu?
  • 20-08-2019, 14:00:26
    #3
    $field = get_field('lisans_durumu_sec', $r['ID'])['label'];
    echo '<span class="licence '.($field == 'ucretli' ? 'paid-bg': 'free-bg float-right').'">';
    echo $field;
    echo '</span>';
  • 20-08-2019, 14:04:11
    #4
    $status = get_field( 'lisans_durumu_sec', $r[ 'ID' ] )[ 'label' ];
    
    if( 'ucretsız' == $status || 'freemium' == $status )
        echo '<span class="licence paid-bg">Ücretli</span>';
    else
        echo '<span class="licence free-bg float-right">';
  • 20-08-2019, 14:13:42
    #5
    mertkilic0111 adlı üyeden alıntı: mesajı görüntüle
    if($label=='ucretsiz' || $label=='freemium')
    {
    <span class="licence paid-bg">Ücretli</span>}else{
    echo '<span class="licence free-bg float-right">';}

    Demek istediğin bu mu?
    bayGaReZ adlı üyeden alıntı: mesajı görüntüle
    $field = get_field('lisans_durumu_sec', $r['ID'])['label'];
    echo '<span class="licence '.($field == 'ucretli' ? 'paid-bg': 'free-bg float-right').'">';
    echo $field;
    echo '</span>';
    bilimokur adlı üyeden alıntı: mesajı görüntüle
    $status = get_field( 'lisans_durumu_sec', $r[ 'ID' ] )[ 'label' ];
    
    if( 'ucretsız' == $status || 'freemium' == $status )
        echo '<span class="licence paid-bg">Ücretli</span>';
    else
        echo '<span class="licence free-bg float-right">';
    Hepinize çok teşekkür ederim, baygarez hocam'ın verdiği kod tam olarak istediğim şekilde sorunumu çözdü.
    Ellerinize sağlık teşekkür ederim.