Yanıtlar:
Evet, sırala. Ne zaman get_option
çağrısı yapıldığında, WordPress adlı bir işlev çalıştırır wp_load_alloptions
ya önbelleğine tüm otomatik yüklenmesi seçenekleri veya yükleri tüm bu seçenekleri önbelleğe alınmış bir kopyasını tutuyor. Ardından wp_load_alloptions
tüm otomatik yüklü seçeneklerin bir dizisini döndürür. Seçeneğiniz otomatik olarak yüklendiyse ( add_option
işlevi kullandığınızda belirtilir ), bu dizinin bir parçası olur ve geri döndürülür.
Seçeneğiniz otomatik olarak yüklenmediyse, WordPress daha sonra özellikle bu seçenek için önbelleğe bakar ve varsa değeri döndürür. Bu işe yaramazsa, son geri dönüş veritabanına gitmek, değeri almak, önbelleği ayarlamak ve sonra geri döndürmektir.
Son olarak, hiçbir seçenek bulunmazsa (örneğin, seçenek adı geçersizdi), WordPress bu seçeneğin adını adı verilen önbelleğe alınmış bir dizide saklar notoptions
. Seçeneği olmayandan sonraki çağrılar yapılırsa, WP ilk önce notoptions dizisini kontrol eder, böylece orada olmayan bir şeyi kontrol etmek zaman kaybetmez.
get_option
Sayfa yükleme başına birden çok kez arama konusunda endişeleniyorsanız , olmayın. WordPress get_option
, otomatik yüklenip yüklenmediğine bakılmaksızın , ilk aramadan sonra seçenek değerini önbelleğe alır .
Neler olup bittiğini görmek için kaynağa gözget_option
atın .
Yok hayır,
yalnızca otomatik olarak true olarak ayarlanmış otomatik yüklenen seçenekler
Http://codex.wordpress.org/Function_Reference/add_option adresine bakın.
Her sayfa için gerekli bir seçenekse, db'ye eklediğinizde, autoload = true değerini ayarlayın.
Ondan sonra, normal olarak sadece get_option kullanın - wp önbellekleme vb.
Evet,
Otomatik yükü evet / true olarak ayarlamanıza gerek yoktur. Varsayılan olarak evet'e ayarlanmıştır: http://codex.wordpress.org/Function_Reference/add_option - son işlev parametresi ($ autoload):
Bu seçenek wp_load_alloptions () işlevi tarafından otomatik olarak yüklenmeli mi (), her sayfa yüklemesinde seçenekleri nesne önbelleğine koyar)? Geçerli değerler: evet veya hayır. Varsayılan: evet
Yine de, hayır olarak ayarlarsanız, seçenek önbelleğe alınmaz.