Drupal

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



5
DrupalデータベースinnodbまたはMyISAM?
Drupalサイトを持っていますが、パフォーマンスの問題が発生しています。データベースをMyISAMからInnoDBに変換するにはどうすればよいですか。切り替えることでパフォーマンスが向上する可能性があることを示します。 MySQLデータベースがInnoDBかMyISAMかを確認するにはどうすればよいですか?

7
分類用語のコンマ区切りリストを表示しますか?
Drupal 7。 私のnode.tpl.phpで、分類用語のリストを出力したい(分類は「チャネル」と呼ばれる)。私が使用する場合: <?php print render($content['field_channel']); ?> 確かに機能しますが、インライン化するためにできる最善の方法は、CSSを使用して左にフロートさせることです。カンマで区切ってください。何か案は? どうも。

4
「Drupal-friendly」ホスティングとはどういう意味ですか?
私は一般的にDrupalとWebホスティングに不慣れです。私の質問は、完全にDrupalフレンドリーなホストを構成するものは何ですか?ホストプロバイダーによってSSHアクセスが可能になり、サーバー上で圧縮ファイルを抽出できるため、インストールが簡単になることは知っています。 Drupal対応のホストで他に何を探すべきですか?
10 7 

9
1600人のユーザーと2500件の投稿を削除する方法
数年前、私はDrupal 6.9でサイトを構成しましたが、それを忘れていました。私は160ページのユーザーがすべてスパマーであり、3つを除くすべてを削除する必要があります。これは、MySQLの呼び出しが原因で、一度に1ページずつ行うのは非常に遅くなります(おそらく)。また、削除するフォーラム投稿が約2500あります。 データベースから直接レコードを削除するのは少し怖いです。 「大量削除」と呼ばれるモジュールを見ましたが、それはDrupalバージョン5用であり、バージョン6では使用できません。
10 6  advertising 

4
ファイルエンティティをメディアエンティティに移行するにはどうすればよいですか?
D7からD8への移行に移行モジュールを使用しており、移行全体をコードで手動で記述しています(移行をより細かく制御するため、組み込みのD7移行モジュールを使用するのではありません)。 私は次のような構造になっています。D7サイトには、画像がファイルエンティティとして保存される画像フィールドがあります。D8サイトでは、画像フィールドはメディアエンティティへのエンティティ参照です(メディアエンティティには画像フィールドがあります)。 もともと、私は私のイメージの移行のために以下を持っていました: id: image_files source: plugin: legacy_images constants: source_base_path: http://example.com/ destination: plugin: 'entity:file' process: fid: fid filename: filename source_full_path: - plugin: concat delimiter: / source: - constants/source_base_path - uri - plugin: urlencode uri: plugin: file_copy source: - '@source_full_path' - uri filemime: filemime status: status 記事ノードの移行ファイルには、次のものが含まれていました。 'field_article_image/target_id': plugin: migration migration: …
10 8  migration 

2
Cookieの有効期間を設定するにはどうすればよいですか?
D8インスタンスでCookieの有効期間を設定できません。ブラウザを閉じるとユーザーがログオフするように、これをゼロに設定したいと思います。 ini_set('session.cookie_lifetime', 0);site / default / settings.phpファイルに追加しました。ファイルに以前のcookie_lifetime参照がありませんでした。行を追加しました。DrupalキャッシュとChromeキャッシュもクリアしました。悲しいことに、それは尊重されていません。ブラウザを閉じた後もセッションは持続します。 コードベース全体を検索ini_set('session.cookie_lifetime', 200000);しましたが、サイトに存在しないようです。DrupalがCookieの有効期間を設定している場所がわかりません。また、ルートのphp.iniファイルを介して設定を追加しようとしましたが、それはDrupalによって上書きされています。 これは簡単なことなので、プラグインは避けたいです。皆様からのご連絡をお待ちしております。前もって感謝します。
10 8  cookies 

1
エンティティ参照フィールドから参照されるエンティティIDの配列を取得する方法
カーディナリティのあるentity_referenceフィールドがありますBaseFieldDefinition::CARDINALITY_UNLIMITED。参照されるエンティティIDのリストが必要です。を呼び出すことですべての参照エンティティを取得できることはわかっていますが、$x->referencedEntities()後で読み込まれるエンティティを取得するにはidのみが必要です。現在私はこれをやっています: $a = []; foreach ($entity->autoren as $v) { $a[] = $v->target_id; } $this->setCurrentAnwaltReferenzen($a); D7(-> raw())のようなより良い解決策を誰かが知っていますか? ありがとう
10 8  entities 

6
リンクウィジェットのオートコンプリートに10を超えるアイテムを表示するにはどうすればよいですか?
これはリンクモジュールに関する質問です。Linkモジュールを使用すると、外部リンクと内部リンクの両方を入力できるため、これに強く依存しています。 残念ながら、オートコンプリートフィールドから表示されるアイテムの数は10に制限されています。ほぼ同じタイトルのノードが多数あるため、検索しているノードがある場合、オートコンプリートフィールドに表示されません。 10以上の一致するタイトル。 制限はにハードコーディングされていcore/lib/Drupal/Core/Entity/EntityAutocompleteMatcher.phpます。カスタムモジュール内からこの小さな数を増やすエレガントな方法はありますか?延長する必要がありclass EntityAutocompleteMatcherますか?拡張機能をどこに配置し、リンクウィジェット内から確実に実行されるようにする必要がありますか?
10 8  navigation  ajax 

1
ノードにタブ/ローカルタスクを追加する
というモジュールを作成しましたhotel_reviews。 hotel_reviews.routing.ymlを使用してルートノード/ {node} / reviewsを作成しました。 hotel_reviews.content: path: '/node/{node}/reviews' defaults: _controller: '\Drupal\hotel_reviews\Controller\ReviewsController::content' _title: 'Reviews' requirements: _permission: 'access content' 次に、hotel_reviews.links.task.ymlを使用してローカルタスクを追加しようとしました。 hotel_reviews.content: route_name: hotel_reviews.content title: 'Reviews' base_route: node.view weight: 100 私は今では私のコントローラで定義されたコンテンツにアクセスすることができますnode/1/reviewsが、私はに行くとき、node/1私はレビュー]タブが表示されません。 何が悪いのですか? これまでに次のドキュメントを使用しています。 D7からD8へのアップグレードチュートリアル:hook_menu()およびhook_menu_alter()をDrupal 8 APIに変換 モジュール定義のローカルタスクの提供 ルートの構造
10 8  routes 

3
「フック実装は@paramドキュメントを複製してはいけません。」を修正する方法?
PhpStormを使用して、カスタムモジュールのコードのクリーンアップを実験しています。次の関数の場合、この警告が表示されます。 フック実装は@paramドキュメントを複製するべきではありません。 /** * Implements hook_field_widget_form_alter(). * * @param array $element * @param array $form_state * @param array $context */ function mymodule_field_widget_form_alter(&$element, $form_state, $context) { if ($context['widget'] instanceof \Drupal\text\Plugin\Field\FieldWidget\TextareaWidget) { $element['#after_build'][] = '_mymodule_remove_textarea_help'; } } これを修正するにはどうすればよいですか?@paramコメントを削除する必要があると思ったのですが、削除すると、PhpStormはparamコメントがないと不平を言います。

8
Drupal 8移行モジュールで新しい移行を更新する方法は?
Drupal 8移行プロセスを作成するとき、カスタム移行モジュールを再インストールした場合にのみ、新しい移行プロセスを更新できます。drush crが機能しません。 説明: 私には1つのモジュールがあります。つまりcm_migrations、2つのマイグレーションがある: cm_users cm_tags drush ms私は以下を参照してください。 Group: beer Status Total Imported Unprocessed Last imported cm_users Idle 3 3 0 2016-02-09 16:56:25 cm_tags Idle 4 0 4 新しい移行プロセスを記述します。 cm_beers 実行するdrush cr; drush msと、前と同じテーブルが表示されます。 アンインストールしてインストールしたときにのみcm_migrations、3つの移行プロセスを確認できます。 Group: beer Status Total Imported Unprocessed Last imported cm_users Idle 3 3 0 2016-02-09 …
10 migration 

1
テーマフックとモジュールフック
フックを適用しようとするとき、それがモジュールファイル内にあることに気づくために、 テーマのtemplate.phpファイル、またはモジュールのフックに実装できるフックを知る方法はありますか?
10 hooks 

5
ノードの保存または削除後にカスタムページへのリダイレクトを実行する方法
私がやろうとしていることはうまくいきません、それでも/ node / {id}にリダイレクトされます: function hook_form_alter(&$form, $form_state, $form_id) { $form['actions']['submit']['#submit'][] = 'callback_set_redirect'; } function callback_set_redirect($form, FormStateInterface $form_state) { $form_state->setRedirect('custom.landing.page'); }
10 8  redirection 

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