Drupal

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

6
インストールできません…すでにアクティブな構成に存在しています
Drupal 8.1で、基本ページに何らかの変更を加えるカスタムモジュールまたはカスタム機能をアクティブにしようとすると、このようなメッセージが表示され続けます。(フィールドを追加)。 それは本当に迷惑です... 手順: データベースを完全にクリア /install.phpに移動し、標準プロファイルを選択します サイトが実行されているので、Extend 機能の選択-基本ページ 結果: Unable to install Feature - Basic Page, core.base_field_override.node.page.promote, core.entity_form_display.node.page.default, core.entity_view_display.node.page.default, core.entity_view_display.node.page.teaser, field.field.node.page.body, node.type.page already exist in active configuration. うん...それが私がしたいことです:これらのデフォルト設定を変更してください! 期限切れ: 基本ページにいくつかの変更を加える機能をインストールできます。 私の特徴 これは、機能モジュールで作成した私の機能です 基本的に、2つのフィールド、banner_imageとbackground_imageを基本ページに追加します ファイル: config install core.base_field_override.node.page.changed.yml core.base_field_override.node.page.created.yml core.base_field_override.node.page.promote.yml core.base_field_override.node.page.status.yml core.base_field_override.node.page.sticky.yml core.base_field_override.node.page.title.yml core.base_field_override.node.page.uid.yml core.entity_form_display.node.page.default.yml core.entity_view_display.node.page.default.yml core.entity_view_display.node.page.teaser.yml field.field.node.page.body.yml field.field.node.page.field_banner_image.yml field.field.node.page.field_image.yml field.storage.node.field_banner_image.yml …
15 8  features 

3
TableSortはクエリなしで使用できますか?
私のモジュールでは、いくつかのテーブルにTableSortを使用していますが、コードによって生成されたテーブルがあるため、クエリに直接リンクされていません。これらのテーブルもtheme( 'table')で作成されるため、$ headerおよび$ rows配列があります。ソート関数を書くことで、それらに対してTableSortを使用することは可能ですか? tablesort.inc のドキュメントは、それが可能であることを示唆しているようです(theme( 'table')の呼び出しで作成されたすべてのテーブルには、ユーザーがクリックしてテーブルをその列でソートできる列ヘッダーを持つオプションがあります)。ただし、これを行う方法に関する指示や例は見つかりませんでした。これまでに見つけたものはすべて、クエリに基づいています。Drupal 7を使用しています。
15 7 

2
ノードテンプレートで人間が読めるコンテンツタイプ名を取得する方法
ノード用のノードテンプレートを作成しましたが、正常に機能しています。 「ホワイトペーパー」のようなコンテンツタイプ名を印刷する必要があり、ノードテンプレートにマシン名「w1」があります。variableを使用する{{ node.bundle }}と、マシン名が出力されます。しかし、私は人間が読める名前が必要です。 ノード、コンテンツ、ページ変数の多くの要素を試しましたが、人間が読めるコンテンツタイプ名を印刷することはできません。 誰でも助けることができますか?
14 theming  8  nodes 

1
コントローラへの\ Drupal :: moduleHandler()の依存性注入を使用するにはどうすればよいですか?
コントローラークラスで次の行を使用しています。 \Drupal::moduleHandler()->alter('mymodule_myfunction', $plugin_items); Pareview.shからこのエラーメッセージが表示されます。 クラスでは\ Drupal呼び出しを避け、代わりに依存性注入を使用してください。 どうすればこれを達成できますか?コンストラクター、メソッド、またはサービスを作成する必要がありますか?その場合、サービスに必要なコードは何ですか?サービスが既に存在する場合の「Drupal呼び出しはクラスでは避け、代わりに依存性注入を使用する」という例を見つけました。

2
エンティティ更新を削除する目的は何ですか?
Drupal 8モジュールを更新した後、Drupal 8ステータスページで次のように警告されました。 エンティティ/フィールド定義:エンティティタイプとフィールド定義で次の変更が検出されました。 Googleで少し調べた後、これに対する解決策はを実行することdrush entity-updatesです。ただし、データベースを更新した後、覚えておくか、ワークフローに組み込む必要がある別のコマンドのように見えるため、これは少し奇妙です。もちろん、元の警告に対処する方法がすぐに明らかではなかったようです。 さらに、多くの場合、開発中に[ステータス]ページに他のアクションのアラートが表示されるため、アクションを実行する必要があるかどうかがすぐにはわかりません。 誰でもこの警告の目的を説明できますか?または、この機能がD8に導入されたのはなぜですか?なぜデータベース更新操作には考慮されないのに別々に実行する必要があるのですか?
14 8  entities  drush  updating 

2
多言語コンテンツと単一言語の管理インターフェイス
サイトのコンテンツを多言語にしたい。ページの英語とスペイン語の翻訳を切り替えることができる言語スイッチャーがあります。ページのスペイン語または英語の翻訳からナビゲートするかどうかに関係なく、管理インターフェースは常に英語にする必要があります。 ここでの私の構成です/管理/設定/地域/言語/検出: 以下はuser / 1 / editでの私の設定です: 管理インターフェイスは常に英語ですが、ページをスペイン語に切り替えても、コンテンツは常に英語になります。 コンテンツ言語検出の設定を含む多くの設定を試しました。 これを達成するための正しい構成は何ですか? / es / node / 1 / admin / config / regional / language / detection / url / admin / config / regional / language
14 8  i18n-l10n 

1
地域に応じたブロックのテーマフックの提案を作成する方法は?
Drupal 8以降、テンプレートの命名規則では、配置されている地域に応じて特定のブロックテンプレートを読み込むことはできません(「地域ごとのブロックマークアップと地域ごとのブロックテンプレート機能が削除されました」)。しかし、特定の地域に配置する場合は、ブロック用に異なるhtmlが必要です。どうすればこれを達成できますか? MYMODULE_theme_suggestions_block_alterを使用することを考えましたが、現在のリージョンを取得する方法がわかりません。
14 blocks  8  regions  theming 


3
AJAXフォーム送信を実装するにはどうすればよいですか?
私の仕事は、AJAX経由で問い合わせフォームを送信し、「送信ありがとうございます!」と表示することです。フォームがあった場所にロードされたメッセージ。したがって、既存の連絡先フォームをajaxifyする必要があります。 D8のAJAXを使用してフォームフィールドを検証する方法の例をいくつか見つけましたが、AJAX フォーム送信を実装し、AJAXを介してコンテンツをロードする方法の例を見つけることはできません。 タスクを実装するにはどうすればよいですか?連絡先フォームを変更して必要な機能を追加するにはどうすればよいですか?
14 ajax  8  forms 

3
「drush variable-set」を置き換えるコマンドは何ですか?
Drupal 8では、Drushコマンドは機能しdrush variable-setなくなりました。 (ここ)を読むと、Drupal 8には古い(Drupal <= 7) "変数"を置き換える新しい "構成"システムがあるようです。しかし、同じ目的を達成するための新しいDrushコマンドは何ですか? 具体的には、コマンドを変換したい: drush variable-set site_mail someone@email.com drush variable-set update_notify_emails someone@email.com 新しいDrupal8 / Drush8同等品へ...
14 drush  8 

2
Dev、Stage、またはProductionにログインしているかどうかを確認する方法モジュールはありますか
展開モデルには 開発 ステージ 製造 フェールオーバー(mysqlレプリケーションとロードバランサー) 私たちの問題は、サーバーがフェールオーバーしたことです。フェールオーバーを行っていることをコンテンツエディターに警告することです。さらに、開発ボックスではなく運用エリアで編集していることを確認したいと考えています。 ユーザーがログインした後、環境を区別する方法はありますか?サーバーのホスト名に応じて管理バーを色分けするモジュールはありますか?
14 7 

4
テンプレートのフロントページかどうかを確認します
Drupal 8テストWebサイトのフロントページにいるときにコンテンツを表示しようとしていますが、コンテンツはすべてのページに表示されます。 {% if front_page %} <header role="banner"> {% if logo %} <a href="{{ front_page }}" title="{{ 'Home'|t }}" rel="home"> <img src="{{ logo }}" alt="{{ 'Home'|t }}"/> </a> {% endif %} <h1 style="color:black">TESTTESTTESTESTAET</h1> <h1>test</h1 {{ page.header }} </header> {% endif %} なぜこれが機能しないのですか?どうすればこの機能を作成できますか?
14 theming  8 

5
正しい作曲家ベースのコア更新ワークフローとは何ですか?
composerを使用してDrupal 8の依存関係を管理したいのですが、正しいコアアップデートワークフローが何であるかはわかりません。現時点では、drushを使用してコアを最新のベータリリースに更新していますが、composer.jsonファイルにも依存関係があるため、更新後にcomposer installを使用してcontribベンダーの依存関係をすべてインストールしています。composer installコアを最新バージョンに更新したばかりですが、実行するとコアディレクトリの一部のファイルが上書きされるようです。 また、composer.jsonファイルを手動で編集し、「drupal / core」行を特定のベータリリース(例:)に置き換えようとしました"drupal/core": "~8.0-beta14",が、それでもコアディレクトリ内のファイルは上書きされます。 適切なワークフローとは何ですか?
14 drush  8  updating  composer 

3
フィールドコレクションとエンティティリファレンス
フィールドコレクションはどのように利点がありますか?エンティティ参照を使用して、親を指す新しいコンテンツタイプで同じことを実行できます。 たぶん、誰かがそれぞれがより良くなるいくつかの状況を破壊することができます。 タスク->ファイルの場合、フィールドコレクションの方が良いでしょうか、またはエンティティ参照を持つ新しいコンテンツタイプですか? 各ファイルについて、そのファイルに関する他のデータがさらに必要だったとします。エンティティ参照を使用した新しいタイプの計画のように聞こえますが、フィールドコレクション内にフィールドコレクションを埋め込むことができます。 Drupalには同じことをする多くの方法がありますが、これら2つのソリューションの違いや類似性についてはあまりわかりません。 たぶん誰かが説明するのを助けることができますか?
14 entities 

4
表示されるすべてのページでテンプレートの文字列を翻訳可能にする方法は?
t()* .tpl.phpファイルにいくつかの呼び出しがあります。例として、製品とproduct.tpl.phpファイルについて話しているとしましょう。 テンプレート内の文字列は、実際に使用されるまで認識されません。Drupal.orgにそれについてのスレッドがあり、それが正確であることがわかりました。悲しいことに、http://example.com/pl/product/200に移動すると、その文字列は{locales_source}テーブルに保存され、locationフィールドはに設定され/pl/product/200ます。 ユーザーがローカリゼーションクライアントモジュールのオンサイト翻訳ツールを使用して翻訳できるようにする必要があります。そうすれば、ユーザーは実際に翻訳対象を確認し、適切なコンテキストで翻訳できます。ソースの場所をに設定する/pl/product/200と、ID 200の製品のみが、文字列が翻訳されるように表示されます。さらに悪いことに、ユーザーにその特定の製品の翻訳を強制することができる場合、ロシア語に翻訳できるようにする必要があり、場所がに設定されて/ru/product/PIDいる製品はありません。 データベース内のロケーション文字列を再フォーマットし、すべての製品、l10n_clientツールのすべての言語ですべての文字列を表示する方法はありますか? 私はそれを設定しようとしました: ; sites/default/themes/mytheme/product.tpl.php、 sites/default/themes/mytheme/product.tpl.php、 sites/default/modules/mymodule/mymodule.module (テーマデータを生成するモジュール) しかし、それは翻訳ツールに対してのみ不可視になりました。 Localization clientのバグではないと確信しています。この文字列が発生したと伝えられている文字列を表示します。そして、それはDrupal 7翻訳システムにとっても「それが機能する方法」であるようです-すでに議論され報告されており、何も変わりませんでした。ですから、これはバグレポートではなく、私たちがやらなければならないことをどうやって扱うかを尋ねるだけです。 私は、データモジュールの操作とは関係のないテキストについて話しています。製品を翻訳したくありません。製品イメージギャラリーテンプレートの前-次のように、製品自体とは関係のないテンプレート文字列だけです。 たとえば、モジュールは15個のサムネイルを返し、5個ずつ表示するのがテーマの仕事です。そして、前/次のリンクのニーズaltとtitle属性。翻訳済み。しかし、私のモジュールはそれを知りません。必要はありません。
14 7  i18n-l10n 

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