• 12-08-2022, 23:46:13
    #1
    İçeriğini text olarak ekrana yazdıran bu kodların nasıl kategorilerin açıklama alanında olduğu gibi shortcode için uygun hale getirebilirim? Sorun shostcodeları metin olarak göstermedi.

    Kaynak: https://wpcrumbs.com/how-to-add-cust...to-categories/

    Kullandığım Kodlar:
    /* Custom Field for Categories */
    function dm_category_fields($term) {
        if (current_filter() == 'category_edit_form_fields') {
            $short_description = get_term_meta($term->term_id, 'short_description', true);
            ?>
            <tr class="form-field">
                <th valign="top" scope="row"><label for="term_fields[short_description]"><?php _e('Sayfa Sonu Açıklaması'); ?></label></th>
                <td>
                    <textarea class="large-text" cols="50" rows="10" id="term_fields[short_description]" name="term_fields[short_description]"><?php echo esc_textarea($short_description); ?></textarea><br/>
                    <span class="description"><?php _e('Kategori içeriğinin sonuna birşeyler eklemek için.'); ?></span>
                </td>
            </tr>
        <?php } elseif (current_filter() == 'category_add_form_fields') {
            ?>
            <div class="form-field">
                <label for="term_fields[short_description]"><?php _e('Sayfa Sonu Açıklaması'); ?></label>
                <textarea cols="40" rows="10" id="term_fields[short_description]" name="term_fields[short_description]"></textarea>
                <p class="description"><?php _e('Kategori içeriğinin sonuna birşeyler eklemek için.'); ?></p>
            </div>
        <?php
        }
    }
    add_action('category_add_form_fields', 'dm_category_fields', 10, 2);
    add_action('category_edit_form_fields', 'dm_category_fields', 10, 2);
    
    function wcr_save_category_fields($term_id) {
        if (!isset($_POST['term_fields'])) {
            return;
        }
        foreach ($_POST['term_fields'] as $key => $value) {
            update_term_meta($term_id, $key, sanitize_text_field($value));
        }
    }
    add_action('edited_category', 'wcr_save_category_fields', 10, 2);
    add_action('create_category', 'wcr_save_category_fields', 10, 2);
    Çağırma kodu:
    <?php echo get_term_meta(4, 'short_description', true); ?>
  • 12-08-2022, 23:58:05
    #2
    hocam şunu mu istiyorsunuz [kisa_aciklama] yazılınca postun "short_description" bölümü mü gelsin?
  • 13-08-2022, 00:03:46
    #3
    Alttaki kod işinizi görür.

    <?php 
    $kisa_kod = get_term_meta(4, 'short_description', true);
    echo do_shortcode($kisa_kod);
    ?>
  • 13-08-2022, 00:04:04
    #4
    husamettinunal adlı üyeden alıntı: mesajı görüntüle
    hocam şunu mu istiyorsunuz [kisa_aciklama] yazılınca postun "short_description" bölümü mü gelsin?
    Yok hocam bu alanı ekledim ama içinde kullandığım shortcode'lar çalışmıyor. Gösterecek olursam mesela şöyle bir toogle kodum var;

    Ekranda görünen ise:

    Shostcode'da sorun yok, kategori açıklamasında, içeriklerde..vs her yerde çalışıyor ama bu eklediğim alan bunu desteklemiyor. Editör'den kaynaklanıyor ya da çağırma kodunda echo yerine shortcode okuyabilen bir kodun içerisine yazmam gerek.
  • 13-08-2022, 00:07:14
    #5
    harew1 adlı üyeden alıntı: mesajı görüntüle
    Alttaki kod işinizi görür.

    <?php
    $kisa_kod = get_term_meta(4, 'short_description', true);
    echo do_shortcode($kisa_kod);
    ?>
    Aynen hocam, budur 👍 Yanlış açıdan düşündüğüm için aklıma gelmemiş bu yöntem, çok teşekkürler. Kodu değişkene atamadan şöyle kullansam bir şey değişir mi acaba? Öğrenmek için soruyorum.
    echo do_shortcode( get_term_meta(4, 'short_description', true) );
  • 13-08-2022, 00:08:21
    #6
    Advanced Custom Fields eklentisini denediniz mi hocam
    edit: sorun çözülmüş tamamdır
  • 13-08-2022, 00:10:12
    #7
    SkyGhostAir adlı üyeden alıntı: mesajı görüntüle
    Aynen hocam, budur 👍 Yanlış açıdan düşündüğüm için aklıma gelmemiş bu yöntem, çok teşekkürler. Kodu değişkene atamadan şöyle kullansam bir şey değişir mi acaba? Öğrenmek için soruyorum.
    echo do_shortcode( get_term_meta(4, 'short_description', true) );
    sorun olmaz ben mantık açık şekilde görünsün diye uzattım kodu.
  • 13-08-2022, 00:14:01
    #8
    husamettinunal adlı üyeden alıntı: mesajı görüntüle
    Advanced Custom Fields eklentisini denediniz mi hocam
    edit: sorun çözülmüş tamamdır
    Yok hocam eklenti ile yapmak istemiyordum. @harew1; hocam çözdü sağolsun.👍

    harew1 adlı üyeden alıntı: mesajı görüntüle
    sorun olmaz ben mantık açık şekilde görünsün diye uzattım kodu.
    Genelde hep sizin gibi yazıyorlar kodları da merak etmeye başlamıştım hocam bir sebebi mi var diye. Ben kısaltmayı tercih ediyorum da acaba bilmediğim bir şey varda yanlış mı yapıyorum diye düşündüm çok fazla arka arkaya ( içine ) kod geliyor diye.