ノードの言語セレクタードロップダウンを非表示にして、多言語対応のコンテンツタイプのページを追加します。
何が最善の方法でしょうか?おそらくjqueryセレクター?
これにはjQueryを使用しないでください。よりよく使うhook_form_alter
。
ユーザーにターゲットの役割があるかどうかを確認します。 $form
および印刷された配列から言語選択を検索します。言語選択を隠すより。
非表示にする方法は2つあります。
第一:
$form['language']['#access'] = FALSE;
2番目:
$form['language']['#prefix'] = '<div class="element-invisible">';
$form['language']['#suffix'] = '</div>';
最初 :
function myModule_form_alter(&$form, &$form_state){
....
$form['#after_build'][] = 'my_custom_form_after_build';
}
第二:
function my_custom_form_after_build(&$form, &$form_state){
$form['language']['#access']=FALSE;
}
必要に応じて、デフォルトのブロック設定構成ページで十分です。
admin/structure/blocks/manage
に移動し、言語選択ボックスを編集します。画面下部のページの下で、ブロックをリストされたものを除くすべてのページに表示するように設定し、パスをnode/*/edit
に設定します。より細かい制御が必要な場合は、PHPコードオプションを使用できます。
drupal admin/config/regional/i18n/selectから無効にできます
「コンテンツ翻訳リンクを隠す」にチェックを入れるだけです