Untuk menjawab pertanyaan Anda dengan tepat:
Membuat tipe konten pada pemasangan kait : Anda menggunakan node_type_save () untuk membuat jenis konten, berikut ini adalah contoh dari webform.install:
// Create the default webform type.
$webform_type = array(
'type' => 'webform',
'name' => st('Webform'),
'base' => 'node_content',
'description' => st('Create a new form or questionnaire accessible to users. Submission results and statistics are recorded and accessible to privileged users.'),
'custom' => TRUE,
'modified' => TRUE,
'locked' => FALSE,
);
$webform_type = node_type_set_defaults($webform_type);
node_type_save($webform_type);
node_add_body_field($webform_type);
Apa yang dilakukan di hook_uninstall : Pada dasarnya hanya membersihkan diri sendiri, jadi hapus variabel yang dibuat modul Anda (menggunakan variable_del () ), hapus semua file yang diunggah oleh modul (menggunakan file_unmanaged_delete_recursive () ), hapus tipe konten yang ditentukan (menggunakan node_type_delete () ), dll.
Semoga ini membantu!
Salah satu cara terbaik untuk menyimpan informasi ini dalam kode adalah dengan menggunakan fitur . Feaures dapat dimasukkan ke dalam kode:
Daftarnya berlanjut.
Satu fitur bagus tentang fitur adalah integrasi drush
drush features
akan memberi Anda daftar semua fitur di situs, dan statusnyadrush features revert all
akan mengembalikan semua fitur kembali ke apa yang ada dalam kode (benar-benar berguna untuk menjalankan setelah penyebaran)Bantu ini membantu
sumber
Lihat modul Contoh D7 . node_example telah menginstal & mencopot.
Anda mungkin dapat menyempurnakan jenisnya dengan alat antarmuka lalu membuat fitur (dengan modul fitur) & mengekstrak bagian yang relevan ke dalam fungsi pemasangan modul khusus Anda.
sumber
Jika Anda ingin membuat tipe konten baru dengan beberapa bidang, Anda dapat menggunakan kode di bawah ini.
Kode ini berfungsi dengan baik untuk saya.
sumber
Saya melakukan ini dalam modul MySpace Sync .
Saya ingat mengumpulkan itu bersama-sama dari berbagai sumber, tetapi saya tidak ingat apa semua sumber itu. Anda dapat menelusuri repositori git di sana untuk melihat apa yang saya lakukan, tetapi pada dasarnya ini adalah ekspor dari setiap jenis konten dengan modul Copy Konten CCK saat instalasi, dan kemudian menghapus semua node sebelum menghapus jenis konten pada uninstall.
sumber
Coba tautan di bawah ini, ini akan sangat membantu.
Drupal 7 Field API - Menyiapkan tipe konten baru saat menginstal dan menambahkan bidang
sumber