コンテンツタイプの作成/編集ノードでオーサリング情報、リビジョン情報、公開オプションタブを非表示にする方法


8

任意のコンテンツタイプの作成/編集ノードで、オーサリング情報、リビジョン情報、公開オプションタブを非表示にしようとしています。私は運が悪いのに別のモジュールを試しました。これを達成する方法を教えてください。どうもありがとうここに画像の説明を入力してください

回答:


5

私は通常、カスタムモジュールとdrupalのフォームAPI、および#access = FALSE非表示にしたいフォーム要素の設定を使用してこれを行います(サードパーティのモジュールでテストして、何も壊れないことを確認します)。

最近、Drupal 7/6でこれを正確に行うOverride Nodeオプションに気づきました。


アクセスをfalseに設定するとうまくいきました:hook_form_alter:$form['revision_information']['#access'] = false;
FLY

5

個々のオプションを非表示にするには、module_form_alter()関数で次のコードを使用できます。

$form['revision_information']['#access'] = FALSE;
$form['author']['#access'] = FALSE;
$form['options']['#access'] = FALSE;

['options']のおかげで、公開タブがなくなりました。
ダイアナ

4

AFAIK、Override Node Optionsはこれらのオプションを無効にすることはできません。それ以外の場合は必要な権限を持たないユーザーに対してそれらを有効にすることができます。

不要な要素を表示から削除するためのJammerモジュールがあります。


これにより、開発者以外の人にとっても簡単で管理しやすくなります。この方法で「公開」メニューを非表示にすることはできませんが?とにかく、ほとんどのユーザーが「公開」を理解しているため、このソリューションが好きですが、一部のエンドユーザーにとっては、リビジョンなどの他のオプションは難しいものです。そして、これらのオプションはJammerモジュールで非表示にすることができます:)
FLY

3

私は私のために働くこのコードを書きました

function MODULENAME_form_alter(&$form, $form_state, $form_id) {
  dsm($form_id);
  if ( $form_id == 'FORM_ID'){
    $form['additional_settings']['#access'] = false;
  }
  return $form;
}

0

Drupal 8では、リビジョンフィールドを構成可能にするための中心的な問題があります。可能であればそれを手伝ってください。そうでなければ、Hide Revision Fieldモジュールを使用してください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.