タグ付けされた質問 「entities」

Drupal 7以降に使用された用語では、ノード、コメント、分類用語、およびユーザーは一般に「エンティティ」と呼ばれます。

6
エンティティページからentity_typeおよびentity_idを取得するにはどうすればよいですか?
一部のページ(パス)は1つのエンティティを表しています。例えば: これらのパスにあるページは、1つのノードエンティティを表します。entity_id(nid)はXXです。 / node / xx / node / xx / delete / node / xx / edit このパスのページは、1つの検索サーバーエンティティ(検索APIモジュールで定義)を表し、entity_id(machine_name)は「apache_solr」です。 / admin / config / search / search_api / server / apache_solr 現在のフックまたは関数がそれを渡さない場合、このエンティティ(idおよびtype)に関する基本データをどのようにロードしますか? 現在のエンティティを取得する標準的な方法は明らかに使用すること menu_get_object($entity_type,$position_of_id_in_url)です。ただし、これは1つのエンティティタイプのみをコーディングしていることを前提としています。エンティティタイプをプログラムで記述する必要があり、さらに悪いことに、このエンティティが使用するエンティティIDのURL位置を調査してハードコーディングする必要があります。 。 これまでに見つけることができる最も近いのは、ページの基になるシステムURI(例:)を取得してから、この提案のようなものにsubstr(request_uri(),strlen($base_path))基づいて怪しいスイッチリストを記述し、サイトがこれまでに持っていると思われるすべての考えられるエンティティについてケースを推測し、ハードコーディングします。 。しかし、それよりももっと良いものがあるに違いありませんよね? コアからの一般的な解決策が最善ですが、ctools(ページマネージャー、コンテキストなど)、Entity API、Develなどの一般的なモジュールに依存する回答も受け入れます。 私の当面の必要性は、hook_field_widget_form()(適切な構成とモジュールを使用して)フィールド化可能なエンティティタイプにアタッチできるウィジェット用の編集フォームです。したがって、一般的な解決策が最善ですが、この関数内またはフォームでのみ機能する狭い答えも受け入れます(エンティティタイプに固有のIDおよびデータは$ formに埋め込まれているように見えますが、エンティティにキー入力されています特定の方法で入力するので、$ formから取り出すのは、鶏と卵の問題のようです)。 ------------編集------------------ 一部の人々は単純な一般的な問題を理解するのが難しいようです。これが別の使用例です(別の別の関連する問題が私が直面しています)。いくつかのエンティティーをリストするビューがあるとします。このビューは、ノードページやユーザープロファイル(またはその両方)などの1つのエンティティを表すことができるページのブロック/ペインとして配置されます。ビューのデータを読み取り、結果を確認するフックを設定しました(foreach $view->result as...)。それがhook_views_pre_renderだとしましょう、つまり$ viewオブジェクトだけを持っているということです。ビューの結果の行にページと同じエンティティIDとエンティティタイプがある場合、何かを実行したい(たとえば、行を削除したり、フィールドデータを変更したりする)。ビューの結果からこのデータを抽出するためのロジックがあるので、必要なのは、生成されているページのentity_typeとentity_idを検索して比較することだけです。そのデータはDrupalのどこかにあります。そうでなければ、Drupalはこのビューをロードする必要があることを理解できなかったでしょう。それで、それがあなたがいるフックまたは関数に渡されないとき、どうやってそれを得るのですか?
9 7  entities 

3
インラインエンティティフォームを使用して既存のエンティティを参照する方法
エンティティ参照を使用してリストにタスクを作成しています。タスクとリストは両方ともコンテンツタイプであり、リストにはタスクへの複数値のエンティティ参照が含まれています。ほとんどのタスクは1つのリストにのみ属しているため、インラインエンティティフォームを使用するのは自然なことでした。 問題はほとんどです - 多くのリストに属する必要があるいくつかのタスクがあります。 モジュールのドキュメントは言う: 既存のエンティティも参照できます。 それでうまくいくでしょう。私の質問は非常に簡単です。どうすればよいですか。表示されるボタンは「新規ノードの追加」のみで、ノード作成フォームを開きます。「既存のノードを追加」を表示するにはどうすればよいですか?
8 entities 

3
テキストにインライン化した場合、ファイルエンティティのレンダリングをどのように制御できますか?
メディアをテキストフィールドに埋め込む方法については、ここにWYSIWYGとCKEditorを設定して、メディアブラウザ/メディアの埋め込みボタンを含めるための優れた手順があります。 現在、その埋め込みプロセスの出力を制御しようとしています。具体的には、画像の横にあるキャプションのテキストフィールドをレンダリングしようとしています。まず、新しいビューモードをファイルエンティティにhook_entity_info_alterで追加し、このビューモードを正しいフィールドを表示するように構成し、期待どおりに出力されると考えました。 ただし、「ファイル表示」設定も追加しない限り、これだけでは何も行われず、フィールド設定を尊重する方法を理解できていないようです。私はこれまでにかなりの量のデバッグとハッキングを行ってきましたが、これを正しく行うことができません。質問にはもっと多くの詳細を記入することができますが、問題から頭や尾を作ることができないので、それが非常に役立つことはほとんどありません。 質問私は、ファイルエンティティを使用してファイルの外観を制御するにはどうすればよいですか?は明確に関連しており、おそらくは重複していますが、これは特にインラインメディアに関係しているため、この別の質問を開くには十分に異なる場合があります。
8 media  entities  files 

5
entitity_metadata_wrapperによる日付フィールドの設定
のdate使用を通じてタイプのフィールドを設定しようとしていますentity_metadata_wrapperが、フィールドはmysqlで日時として作成されますが、ノードを作成すると、使用entity_metadata_wrapperに失敗したときに、予想されるYYY-MM-DD HH:MM:SS形式で設定されます。挿入できたのはタイムスタンプだけです。ISO日付形式と標準形式の両方を試しました。 これは私が更新に使用しようとしている行です: // sets reminder date in db $wrapper->field_event_reminder_date->set($reminder_date->format("Y-m-d H:i:s")); ありがとう!
8 7  entities 

3
トークンを新しいフィールドのデフォルト値として設定する
Drupal 7では、ほとんどのフィールドにデフォルト値を設定できます。トークンをデフォルト値として設定することは可能ですか? これはDrupal 6で可能だったことを覚えていますが、Drupal 7では不可能のようです。 可能性について議論するスレッドがここにありますが、それが解決されたかどうかははっきりしません。
8 7  entities  tokens 

2
プログラムでテキストをどのようにフィルタリングしますか?
テキストを表示し、選択したフィルターをそれに適用する必要があります。テキストはtext_formatフィールドタイプを使用して保存されます。 つまり、元のテキストは知っています。選択した形式の種類はわかっていますが、実際にテキストをフィルター処理する方法がわかりません。 プログラムでテキストをフィルター処理するにはどうすればよいですか?ありがとう

1
いつ既存のフィールドを使用する必要がありますか?
コンテンツタイプに新しいフィールドを追加するときに、既存のフィールドをいつ再開する必要がありますか?たとえば、コンテンツタイプに画像フィールドが必要な場合、既存の画像フィールドを再利用することは常に良い考えですか?
8 7  entities 

3
$ node変数からフィールドラベルを取得する
Drupal 7で、ノード内の特定のフィールドのラベルを取得するにはどうすればよいですか? 私が興味を持っている分野は、次のような構造です。 [field_text_question1] => Array( [und] => Array( [0] =>配列( [値] =>セールスインターン [フォーマット] => [safe_value] =>セールスインターン ) ) )
8 7  entities 



1
プログラムで時間型フィールドを設定するにはどうすればよいですか?
カスタムコンテンツエンティティタイプを作成します。 イベント時間に1つのフィールドが必要です。 時間フィールドはありませんが、dataTime_typeがあるため、カスタムフィールドのプラグインを作成します。 FieldType:TimeItem.php /** * Plugin implementation of the 'time' field type. * * @FieldType( * id = "time", * label = @Translation("Time Field"), * description = @Translation("Permet la creation d'un champ de type time"), * default_widget = "time_widget", * default_formatter = "time_formatter" * ) */ /** * {@inheritdoc} …

3
ノードのコンテンツタイプの変更
Drupal 7では、ノード変換を使用して、ノードのコンテンツタイプを簡単に切り替えることができます。ただし、Node ConvertはDrupal 8に移植されておらず、移植に対する熱意もそれほど高くないようです。 同じフィールドを持つ2つのコンテンツタイプがある場合、Drupal 8でノードをコンテンツタイプから別のコンテンツタイプに変換するにはどうすればよいですか?ノード変換モジュールで使用される次のDrupal 7コードと同等の、Drupal 8に使用するコードは何ですか?(node_convert.util.incを参照node_convert_node_convert()してください。) // $nid, $destination_node_type, $source_fields, $destination_fields, // $no_fields_flag, and $hook_options are the parameters passed to the function. $node = node_load($nid); if ($node == FALSE) { return FALSE; } // Change the node type in the DB db_update('node')->fields(array('type' => $destination_node_type))->condition('nid', $nid)->execute(); // If there …
8 nodes  8  entities 

4
presaveフックを使用してフィールド値をノードタイトルとして保存する方法
ノードタイプ「日」にカスタム日付フィールドがあります。ノードを保存(または編集してから保存)するときに、field_date値(公開された日付ではない)を取得して、titleフィールドに保存します。 方法を知りたいのですが、おそらくモジュールを使用して: hook_presave フィールド値を取得 タイトルをフィールド値として設定 ノードを保存
8 nodes  8  hooks  entities 

4
フィールドインスタンスの設定を取得する
field_info_instance()Drupal 8に相当するものは何ですか? デフォルトのフィールド設定は、field.field.ENTITYTYPE.BUNDLE.FIELDNAME.ymlのようなファイルに構成として保存されますが、現在の値を取得するにはどうすればよいですか?
8 entities  8 

2
エンティティ参照のオートコンプリートリストにタイトルとともにノードIDを表示する
Entityreferenceフィールドのオートコンプリートウィジェットにこの機能を追加して、ドロップダウンリストのタイトルの横にノードIDを表示します。このアイデアの背後にある理由は、同じタイトルを持つ複数のノードを区別するためです。 例: これはタイトルです(3) これはタイトルです(2) これはタイトルです(1) 選択するとノードIDが表示されることはわかっていますが、ノードIDに基づいて適切なノードをすばやく選択するために、ドロップダウンリストに表示したいです。
8 7  views  nodes  entities  ajax 

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