2017-09-12 12 views
0

私は私のサイトにカスタムモジュールを持っています。私は自分の語彙の新しいフィールドを使ってアップデートをインストールしようとしますが、フィールドは表示されません。 hook_update:カスタムモジュールの更新後に新しいフィールドは作成されません。 DRUPAL 7

function mymodule_update_7118() 
{ 
    $field_name = 'field_newfield'; 

    if (field_info_field($field_name)) { 
     return; 
    } 

    $field = array(
     'field_name' => $field_name, 
     'type' => 'list_integer', 
     'settings' => array(
       'allowed_values' => array(
         'Yes' => 1,   //heard that adding a NO value may cause problems, although it doesn't work with a no value either.   
       ), 
     ), 
    ); 

    $field = field_create_field($field); 

    $instance = array(
     'field_name' => $field['field_name'], 
     'entity_type' => 'taxonomy', 
     'bundle' => 'vocab_name', 
     'label' => 'Label', 
     'widget' => array(
      'active' => 1, 
      'module' => 'options', 
      'settings' => array(), 
      'type' => 'options_select', 
      'weight' => '3', 
     ), 
    );  
    field_create_instance($instance); 
} 

ログは、このフィールドを変換する文字列を作成する内在モジュールのいくつかの録音が含まれています。また、必要なテーブルはすべてデータベースに作成されますが、それらはすべて空です。

答えて

0

新しいカスタムフィールドを作成するには、カスタムモジュールのようにする必要があります。手順は次のサイトで見つけることができますhttps://drupal.stackexchange.com/questions/140517/how-to-create-new-field-type

優れたfield_exampleモジュールは、常に最初に表示されるサンプルモジュールから見つけることができます。サンプルモジュールは、https://www.drupal.org/project/examples

からダウンロードできます。
関連する問題