Alt temamın dosya yüklenmeden functions.php
önce ana temanın dosyasını yüklemek zorunda sorun var functions.php
. Bu, kurulum ve başlatma prosedürü için gereklidir. /Wp_core_root/wp-settings.php (adlandırılmış:) içindeki kancalara baktım do_action('setup_theme');
.
Sorun i nasıl kancaya bilmiyorum, çünkü ben ilk dosya almak çocuk tema's functions.php
, yani hayır add_action( 'setup_theme', 'my_init_function' );
işe yarayacak.
Düzenleme:
a) Eklentiler tema daha önce yük biliyorum ve bu nedenle ilk Sorgu bile erişebilir, ancak bir Eklenti güvenmek istemiyorum.
b) wp-settings.php dosyasındaki kod (kısaltılmış)
// happens a lot earlier:
do_action( 'plugins_loaded' );
// localize stuff happening here
do_action( 'setup_theme' );
// Load the functions for the active theme, for both parent and child theme if applicable.
if ( TEMPLATEPATH !== STYLESHEETPATH && file_exists( STYLESHEETPATH . '/functions.php' ) )
include( STYLESHEETPATH . '/functions.php' );
if ( file_exists( TEMPLATEPATH . '/functions.php' ) )
include( TEMPLATEPATH . '/functions.php' );
// first available hook, *after* functions.php was loaded
do_action( 'after_setup_theme' );
İki şeyden kaçınmak istiyorum: Öncelikle kullanıcılara çok fazla açıklama. İkincisi, yanlışlıkla ipi keserek ebeveynlerin init prosedürünü silerek birinin herhangi birisini kırma şansı. İnsanlar herhangi bir şeyi bilmeden kırma riski olmadan işlevler içinde oynarlar. Php.
Başka bir deyişle: Çocuğum temaları function.php dosyasını nasıl temiz tutabilirim, ancak ana temalar önyükleme yapılsın mı?
Herhangi bir fikir? Çok teşekkürler!
functions.php
. wp-settings.php
Çekirdek (satır: 275-279 @wp 3.1 rc) içindeki "molto loko" dosyasına bir göz atın ... şuna benzer:, bu if ( TEMPLATEPATH !== STYLESHEETPATH && file_exists( STYLESHEETPATH . '/functions.php' ) ) include( STYLESHEETPATH . '/functions.php' ); if ( file_exists( TEMPLATEPATH . '/functions.php' ) ) include( TEMPLATEPATH . '/functions.php' );
yüzden bir şans göremiyorum ... Ve kullanmak istemiyorum benim tema bootstrap için bir eklenti.
include(/path/to/parent/themes/functions.php)
çocuğunuzun temaları işlevlerinin üstüne eklerseniz . Php, o zaman orada her şey daha önce yüklenir. Değil?