[フィールドの管理]タブと[表示の管理]タブを非表示にする方法


18

Drupal 7を使用してWebサイトを作成していますが、分類法の許可を調べていました。ウェブサイトのメンテナーに語彙の管理と用語の追加、用語の並べ替えなどを行う中心的な場所を提供したかったので、分類法の下で「語彙と用語の管理」権限を付与しました。しかし、これは望ましくない複雑さをもたらし、主に新しいフィールドを作成して表示を管理するアクセス権を与えました([フィールドの管理]タブと[表示の管理]タブ)。

「構造>分類」からアクセスできる語彙および用語の編集画面にアクセスできるようにする方法はありますが、語彙編集画面の「フィールドの管理」および「表示の管理」タブを無効にしますか?

Drupal 6のオーバーライドとフックの概念にはかなり精通していますが、Drupal 7には初めてです(実際、これは私の最初のD7 Webサイトであり、5つまたは6つのD6 Webサイトを作成しました)これに対するコーディングソリューションがあれば。答えを探したり、正しい方向に押したりするだけです。

まだ誰も回答していないので、分類(管理/構造/分類)を管理するための中央エリアの代替案を検討したいと思います。分類法の管理ページをシミュレートするためのビューを備えたページの作成を検討することができたかもしれません。

それは実現可能であり、以前に誰かがこのようなことをしたことがありますか?

回答:


8

これはしばらく前に回答されましたが、カスタムモジュールや特別なモジュールを必要としないソリューションがあります。

コアフィールドUIモジュールを無効にすると、[フィールドの管理]タブと[表示の管理]タブは表示されません。

これが実稼働サイトである場合、フィールドを希望どおりに構成済みであるため、これで問題ありません。変更を加える必要がある場合は、モジュールをもう一度簡単に有効にしてください。


1
+1これは、結果を得るための最もクリーンでかさばらず、迅速な方法のようです。
ビービー

これは回避策ではなく、「カスタムモジュールや特別なモジュールを必要としない」ソリューションであり、これまでに作成されたすべてのDrupalサイトで問題なく機能します。
マーブルグレービー14


3

許可administer taxonomyは、フィールド許可を与えるために使用されるものです。分類管理にアクセスするためにこの許可を与える必要がある場合、フィールドuiの新しい許可を作成できます。

これを設定する最も簡単な方法は、hook_entity_info_alterフックを使用することです。これは、フィールドuiの管理パスとそれらのアクセス許可が追加される場所であるためです。hook_menu_alter権限を変更するために使用することもできますが、これはもう少し作業です。


2

hook_menu_alter()を使用して、field_ui.moduleファイルのfield_ui_menu()関数で設定された「アクセスコールバック」を編集してみてください。これは、「フィールドの管理」および「ディスプレイの管理」メニュー項目が設定される場所です。

hook_menu_alter()で、分類パスのこれら2つのメニュー項目エントリを探し(これらのコンテンツタイプバージョンを保持するため)、「アクセスコールバック」を、作成した新しい権限をチェックするカスタムメソッドに変更できます。 hook_permission()で。

私は過去に似たようなことをしてきましたが、必要に応じてコードを送っていただければ幸いです。

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