it-swarm.asia

şablonun resimler klasöründeki görüntüleri eklemenin en iyi yolu nedir?

şablonun resimler klasöründeki görüntüleri eklemenin en iyi yolu nedir? get_bloginfo('template_url') kullanarak mı? PHP'nin işlev çağrıları kaydettiğinizden beri, görüntüler klasörüne giden yolu zorlaştırmanın daha iyi olduğunu anladım.

düşüncesi olan var mı?

5
Amit

Bunu yapmanın en kolay ve en basit yolu, temanızın functions.php dosyasında benzersiz bir değişken tanımlamaktır.

Gibi:

<?php
$theme_name_images = get_bloginfo('stylesheet_directory') . '/images/';
?>

Bir önceki cevap olarak önerilen sınıflara gerek yok.

EDIT: Viper007Bond'ın açıkça işaret ettiği gibi, bloginfo () yerine get_bloginfo olmalıdır.

6
john010117

PHP'nin işlev çağrıları kaydettiğinizden beri, görüntüler klasörüne giden yolu zorlaştırmanın daha iyi olduğunu anladım.

İşlev çağrıları konusunda kesinlikle endişelenmem, WordPress'in nesne önbelleği sizin için her şeyi önbelleğe alır. İsterseniz yolu sabit olarak tanımlayabilirsiniz, ancak genelde rahatsız olmazdım.

Ben sadece yapardım:

<img src="<?php bloginfo('stylesheet_directory')"?>/images/image.png" />

bunu düzenledim

<img src="<?php bloginfo('stylesheet_directory');?>/images/image.png" /> (yukarıdaki hata verir)

7
Joe Hoyle

@Amit: bağlıdır. Çoğu işlev çağrısı PHP'de oldukça hızlıdır, bu nedenle performans arıyorsanız çok fazla endişe etmem. Ancak tüm bu çağrıları görünce nasıl hissettiğinizi biliyorum. Yine de, asla zor kodlu yollar istemem.

Temanızda get_bloginfo('template_url') işlevini birçok kez kullanacaksanız, neden onu functions.php dosyanızdaki global bir değişkene atamıyorsunuz ve daha sonra normal olarak işlev çağrısına başvuruda bulunacağınız her yere başvuru yapmıyorsunuz? amits_template_url gibi çakışma olasılığı olmayan bir şey söylediğinizden emin olun. Yani bunu functions.php ile yapın:

global $amits_template_url;
$amits_template_url = get_bloginfo('template_url');

Ve sonra temanızda her yere referans verin get_bloginfo('template_url').

2
MikeSchinkel

Yalnızca görüntü dosyalarınızı CSS dosyanızdan bağlayın; bu, CSS dosyasındaki görüntülere göreceli yolu kullanabileceğiniz anlamına gelir. Bu sadece bir CSS çözümüdür. PHP kod gerekli değil. İş tarayıcı tarafından yapılır.

0
hakre

Ne tür bir gelişme yaptığınıza bağlı. Eklenti geliştirme yapıyorsanız, işlevleri kullanmanız gerekir, çünkü url yapısının ne olacağını tam olarak bilemezsiniz. Belirli bir web sitesinde belirli bir çalışma yapıyorsanız, kodlamada teknik olarak sorun yok, ancak url yapısının değişebileceği ihtimalini engellediği için bu hala tavsiye edilemez.

Ne zaman eklenti veya tema geliştirsem, programı bir sınıfta yapıyorum; Bu şekilde, tekrarlayan değerleri nesnenin özellikleri olarak kaydedebilirim (örneğin, WP URL ve template_url). Bu sayede fonksiyonları tekrar tekrar çağırmadan hızlıca kullanabilirim.

0
John P Bloch