Tanımsız dizinler/değişkenler hakkındaki bildirimler

Drupal 7'de kendi özel şablonumu oluşturuyorum ve bazı sistem hatalarım var. Birileri lütfen bana bunları ve nasıl düzeltebileceğimi ya da bu sorunları çözmeme yardımcı olacak belgelere yönlendirebilir mi? İşte hatalar:

Dikkat: Tanımsız dizin: include() içindeki gezinti (/Users/Ken/Sites/drupal_cprna/sites/all/themes/na/templates/page.tpl.php       Uyarı: Tanımsız değişken: ikincil_menu_heading include() (/Users/Ken/Sites/drupal_cprna/sites/all/themes/na/templates/page.tpl.php satırındaki 107 satırı).       Uyarı: Tanımsız değişken: include() başlıklı başlık (/Users/Ken/Sites/drupal_cprna/sites/all/themes/na/templates/block.tpl.php.       Uyarı: Tanımsız değişken: include() başlıklı başlık (/Users/Ken/Sites/drupal_cprna/sites/all/themes/na/templates/block.tpl.php.       Uyarı: Tanımsız değişken: jump_link_target include include() (/Users/Ken/Sites/drupal_cprna/sites/all/themes/na/templates/html.tpl.php satırının 74. satırı).

1

2 cevap

Bu hataların tümü, çeşitli şablon dosyalarında mevcut olmayan ilgili değişkenlerden kaynaklanır.

Sayfa.tpl.php dosyasında varsayılan olarak kesinlikle $ ikincil_menu_heading özelliği yoktur ve varsayılan olarak html.tpl.php 'da sağlanan jump_link_target yoktur.

Tahminimde temanızı, 'ın yaptığı bu değişkenleri şablon dosyalarına sağlayan başka bir temaya dayandırdığınızı ve aynısını yapmanız gerektiğini söyleyebilirim. Bu durumda söz konusu temanın template.php dosyasına, özellikle de themename_preprocess_x() işlevlerine ... bakın, değişkenlerin oluşturulduğu ve sağlandığı yer şablon dosyaları.

Tema sisteminin bu yayında nasıl çalıştığına dair iyi bir genel bakış.

1
katma

D7 kurulumumda bir Zen alt öğesi kullanarak aynı hatayı aldım:

Dikkat: Tanımsız değişken: include (include içinde başlık (satır 53   .../siteler/all/temalar/mysubtheme/templates/block.tpl.php)

Bu hata, bloklarımın başlıklarının umduğum gibi ön uçta hiç görünmemesine neden oldu.

Clive'nin dediği gibi, page.tpl.php dosyasında olmayan bir değişken vardı. Böylece, aşağıdaki işlevi Zen'in template.php dosyasından subtheme template.php dosyama kopyaladım:

function mysubtheme_process_block(&$variables, $hook) {
   $variables['title'] = isset($variables['block']->subject) ? $variables['block']->subject : '';
}

(Bununla birlikte, işlevi " yoursubtheme _process_block" olarak yeniden adlandırmanız gerektiğini unutmayın)

Ve ... voilá, bloğumun başlıkları tekrar gösterildi. :-)

Yorumunuz için çok teşekkürler Clive. Bana çok yardımcı oldu!

Joan

1
katma