2017-09-06 47 views

回答

0

這是可能的有鉤形式改變:

function hook_form_alter(&$form, \Drupal\Core\Form\FormStateInterface $form_state, $form_id) { 
    // if $form_id == 'xyz' 
    $form['field_mylink']['widget'][0]['uri']['#selection_handler']="default:node"; 
    $form['field_mylink']['widget'][0]['uri']['#selection_settings']=[ 
    'target_bundles'=>['article'=>'article', 'page'=>'page'], //etc 
    ]; 

} 
0

我已經寫下面的Drupal貢獻模塊來解決該問題:

Link Field Autocomplete Filter

模塊增加了對濾波的鏈接字段配置自動填充字段中允許的 內容類型。

您可以使用Drupal核心更新管理器模塊手動安裝該模塊使用Drupal的後端(必須啓用): http://yourSite/admin/reports/updates/install 並按照指示。

使用Drush,你可以安裝它:

drush dl link_field_autocomplete_filter; // download 
drush en link_field_autocomplete_filter; // enable the module 

你也可以我們作曲家下載模塊:

composer require drupal/link_field_autocomplete_filter 

只要啓用此功能模塊,以及一系列的複選框(一個用於每種內容類型)將出現在鏈接字段字段實例配置表單中。如果您沒有選中,則所有內容類型都會在自動填充中顯示爲建議。否則只會顯示那些被選中的項目

+0

雖然這個鏈接可能回答這個問題,但在Stack Overflow中只提供鏈接的答案,你可以通過獲取鏈接的重要部分並將其放入你的答案來改善這個答案,這確保你的答案仍然是一個答案,如果鏈接被更改或刪除:) – WhatsThePoint

+0

對不起,但我做到了!這不是一個鏈接唯一的答案!我命名了Drupal模塊,並且引用了模塊的功能和精確的描述!是的,鏈接可能會改變,儘管這種可能性不大。這就是我命名模塊的原因。在這種情況下,可以谷歌模塊的名稱。同樣,如果我發佈整個代碼,答案的有效性可能會在未來發生變化。 – jmux

+0

如果你的答案沒有提供任何信息,如果你變得無效,這不會被視爲堆棧溢出的最佳做法 – WhatsThePoint