Drupal 6 tema bir CCK giriş formu

4 Cevap php

Benim template.php dosyasında bu ettik:

function myadmintheme_theme(&$existing, $type, $theme, $path) {
  return array(
    'node_form' => array(
    	'arguments' => array('form' => NULL),
    	'template' => 'ccktype',
    ),
  );
}

Ve ben aynı Dir bir ccktype.tpl.php ettik:

<b>works!</b>

But is not working, if I enter to node/add/ccktype I don't get the "works!" message.. I tried everything!

Herhangi bir yardım mutluluk duyacağız

4 Cevap

Geçersiz kılmak için gereken tema fonksiyonu ccktype_node_form değil node_form değildir. Düğüm modülü tarafından tutulan tüm düğüm biçimleri bina için node_form işlevine eşlenen olsun, ama yine de eşsiz bir form kimlikleri var.

Bu çözüm:

function myadmintheme_theme($existing, $type, $theme, $path) {
  return array(
    'ccktype_node_form' => array(
    	'arguments' => array('form' => NULL),
    	'template' => 'ccktype',
    ),
  );
}

thanks a lot Eaton!

It started to work for me but after a loong set of trials. :) I'm using Drupal 6 & I made the mistake of writing code for Drupal 5. I used form_render (wich is meant for D5) instead of drupal_render (for D6), in my node-minister-edit.php.

Ve template.php sonraki değişim fonksiyonu oldu

waffles_theme($existing, $type, $theme, $path){ 
    return array( 'minister_node_form' => array( 'arguments' => array('form' => NULL), 'template' => 'node-minister-edit' ) ); 
}

Dizi argümanını template node-minister-edit ki benim düğümün belirli bir şablon dosyası için minister değiştirildi bakın. İşte minister_node_form olarak, ilk kelime 'bakanı' benim içerik türüdür.

And as Seb said I cleared the caches before I started to use any such change. Hope this helps others :)

The following items have helped me out:
1. http://drupal.org/node/601646
2. http://drupal.org/node/98253

Her şeyden önce, Drupal modülü önbelleğe değil görüyoruz. > Site Yapılandırma> Performans Yönet gidin ve tüm önbelleklerini temizleyin.

Bu işe yaramazsa, dosyayı, düğümden-add-ccktype.tpl.php yeniden adlandırma deneyin.