Kısa kodlar
4 dk okuma
İki kısa kod, kısa kodların çalıştığı her yerde değer yazdırır: yazı içeriği, widget'lar, sayfa oluşturucular ve do_shortcode().
[wpmcf_field]
Tek bir alan değerini, wpmcf_the_field() ile aynı kodla kaçışlayarak yazdırır (bkz. Çıktı biçimleri ve kaçışlama).
[wpmcf_field group="listing" field="price"]
[wpmcf_field group="listing" field="price" id="42" wrap="false"]
[wpmcf_field group="profile" field="bio" context="user" id="3"]
[wpmcf_field group="site_settings" field="company_name" context="options"]Öznitelikler
Öznitelik | Varsayılan | Açıklama |
|---|---|---|
| zorunlu | Alan grubu anahtarı. Olmadan (ya da |
| zorunlu | Üst düzey alan anahtarı. |
|
| Nesne ID'si. |
|
|
|
|
|
|
| yok | Bir Group veya Repeater değerinin içinde noktalı yol: |
| yok | Tek segmentli |
| yok | Alanın değeri olmadığında (hiç kaydedilmemiş veya temizlenmiş) kaçışlanarak yazdırılır. Yalnızca özniteliği yazdığınızda geçerlidir: |
|
|
|
| yok | Widget'ı adlandırır: |
group, field, context, format ve sub_key değerleri sanitize_key() üzerinden geçer; bu yüzden group="LISTING" çalışır. Bilinmeyen öznitelikler yok sayılır.
Kısa kod bir id aldığı için yalnızca ID ve bağlamları kabul eder, user_3 gibi referans dizelerini değil: bunun yerine context="user" id="3" kullanın.
Örnekler (doğrulanmış)
Kısa kod | Çıktı |
|---|---|
|
|
|
|
| Değer: |
| ikinci satırın |
|
|
|
|
|
|
{{ }} ifadeleri
Alan değerindeki ifadeler, wpmcf_get_field() ile aynı kurala göre çözülür: yalnızca değerin yazarı filtrelenmemiş HTML kullanabiliyorsa. Bkz. Değerleri okuma.
Kim neyi görebilir
Kısa kodlar (bloklar gibi) katkıcılar tarafından yazılabilir; bu yüzden açık bir id yalnızca geçerli ziyaretçinin zaten görebileceği şeylere işaret edebilir. Başka her şey boş dize yazdırır. PHP fonksiyonları kısıtlanmamıştır, çünkü tema koduna güvenilir.
| Şu durumda yazdırılır |
|---|---|
| ziyaretçinin ona |
| geçerli kullanıcıysa, görüntülenen yazının yazarıysa (yazar kutuları) ya da ziyaretçide şu yetki varsa: |
| terimin taksonomisi herkese açık görüntülenebiliyorsa |
| ziyaretçi |
| aşağıya bakın |
hiç | denetlenmez: işlenen sayfadır |
Seçenek değerleri (context="options") yazı içeriğinde yalnızca yazının yazarı, grubu gösteren bir seçenek sayfasının yetkisine sahipse yazdırılır: varsayılan olarak manage_options ya da wpmcf/options/capabilities filtresinin döndürdüğü yetkiler. Bu yüzden bir katkıcı kısa kod yazarak seçenek sayfası değerlerinizi yayımlayamaz. Yazı içeriği dışında (şablon, widget) değer yazdırılır; REST ve Ajax isteklerinde (editör önizlemeleri) ise geçerli kullanıcının bu yetkiye sahip olması gerekir.
Filtre: wpmcf/shortcode/can_view (argümanlar: visible, context, nesne ID'si) yukarıdaki her kararı geçersiz kılar:
add_filter( 'wpmcf/shortcode/can_view', function ( bool $visible, string $context, int $id ): bool {
return $context === 'user' ? true : $visible; // show every user's fields
}, 10, 3 );Doğrulanmış matris (her nesnede title alanı ayarlıyken):
Nesne | Yönetici | Abone | Oturum kapalı |
|---|---|---|---|
yayımlanmış yazı | evet | evet | evet |
özel yazı | evet | hayır | hayır |
taslak | evet | hayır | hayır |
parola korumalı yazı | evet | hayır | hayır |
abonenin kendi kullanıcısı | evet | evet | hayır |
başka bir kullanıcı | evet | hayır | hayır |
terim | evet | evet | evet |
onaylı yorum | evet | evet | evet |
bekleyen yorum | evet | hayır | hayır |
Password alanları
Bir Password alanı kısa kod üzerinden asla yazdırılmaz, hangi biçim olursa olsun; wpmcf/field/the_password filtresi izin vermedikçe. Bkz. Parola yardımcıları ve güvenlik.
[wpmcf_global]
Bir Global Data değişkenini, wpmcf_the_global() gibi kaçışlayarak yazdırır.
[wpmcf_global key="phone"]
[wpmcf_global key="phone" wrap="false"]
[wpmcf_global key="site_url" format="url" wrap="false"]Öznitelik | Varsayılan | Açıklama |
|---|---|---|
| zorunlu | Değişken anahtarı. Büyük/küçük harfe duyarsızdır ( |
|
|
|
|
| Yukarıdakiyle aynı kurallar; sarmalayıcı sınıfı |
| yok | Değişken eksik veya boş olduğunda kaçışlanarak yazdırılır. Değerdeki |
Şunun için görünürlük kuralı yoktur: [wpmcf_global]. Global Data tasarım gereği site geneli ve herkese açıktır. Password değişkenleri asla yazdırılmaz.
PHP'de kısa kod kullanma
echo do_shortcode( '[wpmcf_field group="listing" field="price" id="' . (int) $post_id . '"]' );Şablonlarda wpmcf_the_field() tercih edin; kısa kod ayrıştırmasından kaçınır ve referans dizelerini kabul eder.
Sorun giderme
Belirti | Neden |
|---|---|
Hiçbir şey yazdırılmıyor | Değer boş; bir Password alanı; yukarıdaki görünürlük kuralları (özel, taslak, parola korumalı, başka bir kullanıcı); |
Ham | Bu yer kısa kodları çalıştırmıyor. |
Bir | Şu alan türünü kullanın: |
Bir özniteliğin içinde sarmalayıcı span istenmiyor | Şunu ekleyin: |
Hâlâ takıldınız mı? Destek ile iletişime geçin