Drupal

Drupal開発者および管理者向けのQ&A


2
モジュールにカスタムクラスファイルを含めるにはどうすればよいですか?
Drupal 7モジュール開発では、module.infoファイルまたはdrupal_load_included()関数のfile [] =ディレクティブを使用して、カスタムのinc、api、またはphpクラスファイルを含めることができます。 D8がPSRを使用している場合、「プレーンなOLE PHPオブジェクト」をパッケージ化してそれを参照する適切な方法は何DefaultController.phpですか?次のように考えてください$a = new POPO();。 クラスを含むPHPファイルを指定するnamespaceだけで十分ですか?コントローラ(または一般的なモジュール)は、そのクラスを参照またはスキャンする方法をどのように知っていますか?
10 8 

1
Drupal 8でカスタムエンティティを作成する方法[終了]
閉じた。この質問はより集中する必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集するだけで1つの問題に焦点を当てるように質問を更新します。 5年前に閉鎖されました。 多くのカスタムエンティティを持つDrupal 7でビルドした大きな個人プロジェクトがあります。プロジェクトをDrupal 8にアップグレードしたいのですが、完全に書き直されたDrupal 8コアは大きすぎて、ドキュメントなしで頭を動かすことはできません(+ Symfonyはまったく知られていないので、私は単純なDrupalのみの人です)。 。 コアモジュールのコードをいくつか見ただけでカスタムエンティティを作成しようとしましたが、成功しませんでした。 Drupal 8のカスタムエンティティに関するいくつかの記事(私は1つを見つけることができませんでした)を紹介してもらえますか、またはいくつかの基本的なステップバイステップガイドを教えてください。 ありがとう。
10 entities  8 

3
モジュールディレクトリにある画像のテーマ画像スタイル
おそらく、Drupal 6の観点から見て、ここに来るのは多分... 画像がモジュールフォルダーにある場合、特定の画像スタイルで画像にテーマを設定するにはどうすればよいですか?これは私をけんけんさせるものであり、私は単純なものを見逃していることを知っています。 ここに私が何をしようとしているのかを示すいくつかのサンプルコードがあります: $file_uri = 'public://sites/all/modules/my_module/logo.jpg'; $data['logo'] = theme('image_style', array('style_name' => 'medium', 'path' => $file_uri)); file_build_uri()を使用しても、存在しないファイルへのパスができてしまいます。画像をファイルディレクトリに移動して$ file_uriを 'public://logo.jpg'に変更すると、問題なく動作します。 モジュールコードの一部として画像をファイルディレクトリにコピーする必要がありますか?もしそうなら、これはばかげていませんか? 私は何が欠けていますか?このようなことをする方法のドキュメントはありますか?私は1時間以上Drupalのドキュメントをマイニングし、完全に乾燥しました。
10 7  media 

1
モジュール開発でインクルード(inc)ファイルを使用する場合
(.moduleと比較して).incファイルの構造の違いは理解していると思いますが、誰かが設計の違いを説明できますか?drupalのサンプルモジュールがhook_menuで.incファイルを呼び出しているのを見たり、関数の定義のために.incファイルを呼び出しているのを見たりします。 どのような状況で.incファイルにコードを挿入しますか?一部が遵守している一般的な設計ガイドラインはありますか? (または複数の).incファイルを使用する理由について、明確さ以外の利点はありますか?パフォーマンス?バージョン管理? ありがとう!
10 7 

1
entity_metadata_wrapperとfield_get_itemsのどちらがより優れていますか?
エンティティから値を取得するには、2つの方法があります。 field_get_itemsフィールドの値を使用して取得する entity_metadata_wrapperフィールドの値を使用して取得する entity_metadata_wrapper離れ抄録言語の違い、そのAPIは、PHP 5.3を使用する場合は特に、まだぎこちない時々あります。たとえば、長いテキストフィールドの値を取得すると、通常は次のような経路になります。 $field = $wrapper->field->value(); print $field['safe_value']; 幸い、PHP 5.4は次の構文をサポートしていますprint $wrapper->field->value()['safe_value'];。 しかし、私の質問はパフォーマンスについてより懸念しています。どちらもどのように機能しますか?彼らは値を要求するたびにデータベースをクエリしますか?DOESは、entity_metadata_wrapper一度にすべてを要求しますか?(field_get_item単一値検索により適しています。) Drupalのソースを深く掘り下げるのに十分な勇気はありません。

5
Services 3.xとJSONを使用してコメントとノードを作成する
/comment.jsonへのPOSTを認識するサービスを取得できません。ノードの作成にも同様の問題があります。 以下は、私が受け取るエラーです:HTTP / 1.1 406 Not Acceptable:Missing required argument comment このメッセージは、ファイル/services/server/rest_server/includes/RESTServer.incから送信されます。具体的には、次の行です。 elseif (!isset($info['optional']) || !$info['optional']) { return services_error(t('Missing required argument !arg', array( '!arg' => $info['name'], )), 406); } 基本的に、「コメント」引数が欠落していると考えられているようです(オプションではありません)。 これは私が与えたJSONのビットの1つです(ノード8801にコメントを投稿) {name:"test",language:"und",cid:"0",pid:"0",uid:"17593",nid:"8801", comment:{subject:"Subject of the comment, if not entered it will be auto-generated", comment_body: {und:[ [{value:"value of the field comment in …
10 7  services  8  json 

2
GETフォームの作成方法
たとえば、管理領域のフィルターフォームはGETフォームにするのが最適です。これにより、ブックマークが可能になり、ページャーページ間でフィルターを維持できます。 このようなフォームにform_apiを最適に使用するにはどうすればよいですか?_validateフックは送信されますか?_submitフックは省略できますか? たとえば、ビューに公開されたフィルターはこのように機能します。しかし、これを処理するビューのコードは複雑で複雑であり、複雑すぎて、単純なフィルターフォームでカスタムインターフェイスを開発する場合の良い例として使用できません。
10 forms 

3
hook_form_alter実行順序
モジュールの重みを変更したり、Drupal Coreをハッキングしたりせずに、Drupal 7でhook_form_alterの実行順序を変更する方法はありますか? translation_form_node_form_alterに追加された要素を翻訳モジュールから変更しようとしています。フォームをデバッグするときに要素が見つからないため、翻訳モジュールのフックが実行される前にフックが実行されていると思います。
10 7  forms  hooks 

1
Drupal 8コアはデフォルトで訪問者データを収集しますか?
私はここ数日からたくさん検索していますが、答えが得られません。サイトのプライバシーポリシーを作成中です。ユーザー登録やユーザーログイン機能は提供していませんが、匿名ユーザーはコメントを投稿できます。今、DAに関する次のQ&Aを読んだ後、質問が発生します。 Drupal 7でIPアドレスを収集しない 現在、ユーザー情報を収集するつもりはない(統計モジュールを有効にしていない)ので、「ユーザー情報を収集しない」と書くだけです。繰り返しになりますが、コードが私たちの知らないうちにIPアドレス/ホスト名を収集している場合はどうでしょうか。 したがって、どの情報が収集され、どのように保存されているかを知る方法がある場合、それを確認でき、プライバシーポリシーに記載できます。または、Drupalコアがデータを収集していない場合は、そのことも確認できます。 「お客様のデータを収集することはありません」とご記入ください。知る方法はありますか? 注:この質問が(drupalから離れた)プライバシーポリシーに関するものである場合は、私にお知らせください。しかし、これも関連するDrupal CMSコードなので、最初にここで質問したいと思いました。 更新: Drupalコアで問題を提起した:Drupalコアの法的プライバシーポリシーステートメント :それはあなたが他の問題へのリンクがあるコメントを参照してくださいGDPRコンプライアンスなどのプライバシー懸念仕事に行くと、このモジュールの作成については進行中である、モジュールがなり、すでに存在していると言い、一般的なデータ保護規制。 提案を追加したい場合は、問題のコメントを追加してください。
10 8  users 

4
「composer update drupal / drupal」が機能しないのはなぜですか?
でDrupal 8.2.0サイトをインストールしましたcomposer create-project drupal/drupal testsite。 次に、Drupal 8.2.1にアップグレードしたいと思います。ただし、実行composer update drupal/drupal は機能しません。次のエラーを出力します。 アップデート用にリストされているパッケージ「drupal / drupal」がインストールされていません。無視します。 どうすればよいですか?サポートは、example.gitignoreに明確に文書化されています。 # Ignore core when managing all of a project's dependencies with Composer # including Drupal core. # core だから、作曲家でこれを行うにはいくつかの方法が必要ですが、どうやって?
10 8  composer 

1
Composerでコアを更新するにはどうすればよいですか?
わかりました、確かに私は作曲家の初心者です。そのため、以前のサイトでは、作曲マネージャーを使用してDrupalのコアを更新しました。これは非常に簡単に使用できました(「composer drupal-update」を実行するだけです)。ただし、composer managerは非推奨になったと言っています。 Drupal 8.1の改良により、このモジュールのDrupal 8バージョンは非推奨となり、不要になりました。Composerを直接使用して必要なモジュールを取得します。これにより、必要なライブラリもダウンロードされます。 今日、コアにセキュリティ更新を適用する必要があるという警告が表示されましたが、Drupalコアをcomposerで更新する方法に関するドキュメントが見つかりません。 これは、Drupal Console、Drushを介して行われますか、それとも、実行する必要がある実際のcomposerコマンドですか?「drupal.orgからDrupalの最新バージョンをダウンロードし、すべてのファイルを手動で置き換える」以外の優先プロセスについては、はっきりしていません。
10 8  composer 

2
カスタムフックを作成して使用するにはどうすればよいですか?
ここに質問を投稿しましたが、提案は1つありましたが、回答はありませんでした。他のモジュールが親モジュールによって作成された目次を更新できるようにするDrupal 8でカスタムフックを実装する方法について誰かアドバイスはありますか?目次は順不同のリストになります。
10 8 

1
drush / drush dev-masterにはcodegyre / robo〜1.0.0-beta1が必要です
Drupal 6サイトをDrupal 8.1に移行しているので、公式の指示に従って、独自のディレクトリに新しいインストールをセットアップします。これは1つのサイトだけなので、指示に従ってデータベースの資格情報を$ databases配列の宣言の後に、sites / default / default.settings.phpに配置しました。 実行drush --statusすると以下が返されます。 Drush version : 8.1-dev Drush temp directory : /tmp Drush configuration : Drush alias files : Drupal root : /media/psf/Home/apps/newp Drupal Settings File : MISSING このDrupalは8.1-devなので、アップグレードする必要があります。これはComposerを使用したグローバルインストールなので、を実行しcomposer global updateます。 要件をインストール可能なパッケージのセットに解決できませんでした。drush/ drush dev-masterにはcodegyre / robo〜1.0.0-beta1が必要です githubのdrush-opsページを確認しても、このような異常や私のGoogle検索は表示されません。 私は何を見落としているのですか?
10 8  drush 

1
D7からD8にアップグレードした後、D8がD7のように見えない
会社のサイトのD7-> D8移行を正常に実行しました。すべてが順調に進んでいるように見えましたが、Drupal 8のサイトにアクセスすると、デザイン全体がほとんど消えてしまいました。 Drupal 8の古いデザインを再び入手するにはどうすればよいですか?
10 migration 

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