Drupal

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

2
プログラムでコンテンツタイプのフィールドを作成し、コンテンツタイプフォームに追加する方法
このフィールド「map_description」があるとします。私はこの関数がフィールドを定義することを知っています: $field = array( 'field_name' => 'map_description', 'cardinality' => 1, 'type' => 'text', ); field_create_field($field); そして、私はそれが何をするかわからないこのコードを持っていますが、私はそれが必要になると言われました: $instance = array( 'field_name' => 'map_description', 'label' => 'The map description.', 'bundle' => 'my_content_type', 'entity_type' => 'node', 'widget' => array( 'type' => 'text_textfield', ); field_create_instance($instance) これら2つのコードビットはどちらもインストールフックにあり、モジュールをインストールすると実行されます。しかし、フィールドは実際に作成されていますが、「フィールドの管理」を介して手動でコンテンツタイプに割り当てる必要があります。フィールドをコンテンツタイプに自動的に割り当てる方法はありますか?
8 7  entities  nodes 

2
リバースプロキシを使用してフォームをキャッシュし、古いフォームトークンを処理する方法
Form APIがフォームを生成するとき、フォームとともに非表示フィールドに渡され、返されることが期待されるトークンも生成します。そうであれば、フォームは処理されます。 レンダリングされたフォームが、たとえばVarnishによってキャッシュされる場合、このメカニズムは機能しません。フォームを送信した最初のユーザーがトークンを使用し、その後のフォームの使用の試みは拒否されます。 レンダリングされたフォームをキャッシュしている間、フォームを機能させ続けるにはどのような戦略がありますか?
8 caching  forms 

9
makefileを介してDrushで新しいモジュールを有効にする方法
職場では、新しいサイトをgitで設定し、ローカルで開発することに移行しています。これまでのところ、インストールプロファイルと一緒にDrush Makeファイルを作成しました。これをパペット経由でスクリプト化したので、ユーザーがリポジトリの新しいクローンを作成すると、すべてのパッケージがダウンロードされ、基本的なサイトインストールが実行されます。これは問題なく動作します。 さて、私の質問は、サイトに新しいモジュールを使用する必要がある場合です。たとえば、サイトの新しいモジュールを作成します。他の開発者にgitからプルして新しいモジュールを自動的にインストールしてほしい。それをdrush makeファイルに追加すると、ダウンロードのみが行われ、「drush si」を実行すると、サイトが再インストールされ、すべてのデータが消去されます。 これを達成するための最良の方法は何ですか? 編集する 私はこれを適切に説明していません。drushのmakefileエントリに基づいてモジュールを自動的に有効にする方法を探しています。アイデアは、ユーザーがプロジェクトをチェックアウトし、settings.phpファイルが存在しない場合はパペットに「drush make」と「drush si」を実行させることです。私が理解する必要があるのは、ユーザーが次にプルを実行し、新しいモジュールを追加したときに、スクリプトによってそれを自動的に有効にする方法です。必要な場合は、makefileを解析して「drush en」を手動で実行するために何かを書く必要がありますが、これを行うために事前にビルドされたものを見つけたいと思います。

3
一般的なエラー:2006 MySQLサーバーが廃止されました[終了]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? Drupal Answersのトピックとなるように質問を更新してください。 5年前休業。 これは、突然発生するエラーです。 Additional uncaught exception thrown while handling exception. Original PDOException: SQLSTATE[70100]: Unknown error: 1317 Query execution was interrupted...my query Additional PDOException: SQLSTATE[HY000]: General error: 2006 MySQL server has gone away...my query いくつかの調査を行った後、私が作成したカスタムモジュールが大きすぎるクエリを試行しているように聞こえます。多くの人に役立つと思われる解決策はこれです: my.iniを開きます 「max_allowed_pa​​cket」を「1m」から「16m」(またはそれ以上)に変更します my.iniを保存してMySQLを再起動します ただし、私は共有サーバーを使用しているため、my.iniを編集できません。また、プロバイダーが値が1Mに設定されていることを確認しても、増加しません。 私もこれを追加してみました:ini_set('mysqli.reconnect', 'on');にsettings.php。それは問題を解決しませんでした。 誰かが別の解決策を知っていますか、または回避しますか? ありがとう。
8 database 


4
Search API Solrを使用してカスタムSolrクエリを送信する方法
Search API Solrを使用して、カスタムsolrクエリを(できればhook_initで)特定のURLに送信したい。 何かのようなもの: function hook_init() { $url = "admin/luke?show=schema"; $solr = new SearchApiSolrService(); // must have an instance of SearchApiServer // $httpTransport->performHeadRequest($url); // $response = _sendRawGet($url); drupal_set_message(print_r($response, TRUE)); } どうすればそれを達成できますか?実例はありますか? ありがとうございました。
8 search 


3
Drupalのcomposer.jsonファイルを変更することは許容されますか?
Drupalは、コアを変更しないというベストプラクティスに従います。 Drupal 8にはコアにcomposer.jsonファイルが組み込まれています。サードパーティライブラリを追加する必要がある場合、composer.jsonを変更する必要がありますか、それともこれを行うためのより良い方法はありますか?
8 8  composer 

4
Drupal 7の1ページのWebサイト
1ページのウェブサイトスタイルの個人または会社のウェブサイトをたくさん見ました。1ページのデザインは、ユーザーがクリックしてあなたが誰であるかを見つけさせず、Drupalに本当に適用したいすべての情報をできるだけ早く提供するのに非常に適しています。また、単一ページのWebサイトモジュール(http://drupal.org/project/single_page_website)を使用して1ページのWebサイトを実装しようとしましたが、シンプルなページには非常に適しています。だから私の質問は: 1ページのデザインを作成するための最良の方法はどれですか。1ページのテンプレートを作成するか、提供されたモジュールを使用しますか? Drupalが1ページのデザインを作成する利点と欠点は? 私はこれまで1ページのデザインを行ったことがないので、誰かが正しい方向を教えてくれるでしょう。
8 7  theming 

2
パネルに適切にテーマを設定する方法は?
ページマネージャーとパネルを使用して、タイプごとの選択ルールをカスタムノードパネルに提供しています(たとえば、記事の場合は1つのパネルバリアント、ブログコンテンツタイプの場合は1つのパネルバリアント)。これはこれまでスムーズに機能し、スタイリングもすっきりします。しかし、どうすれば要素のレンダリングを強化できますか? 特定の要素をレンダリングする方法はいくつかあります。フィールドを追加する、トークンを使用する、カスタムビューを使用して特定のフィールドのみをレンダリングする、レンダリングされたノードエンティティをビューモードで使用する。プレースホルダーなどでカスタムパネルコンテンツを使用する ここでの最善のアプローチは何ですか?* .tpl.phpでスタイルを設定できるカスタム(何か)ペイン要素を追加できると便利です。 私の現在のアプローチは、ディスプレイスイートを使用して、さまざまなパーツ/パネル領域のビューモードを作成し、各ビューモードにカスタムnode.tpl.phpを追加するためのテーマフックの提案を使用することです。ビューを呼び出す必要はないでしょう。レンダリング、追加のクエリ...)、すでにキャッシュされたエンティティを使用できます。 function mytheme_preprocess_node(&$vars) { if ($vars['node']->type == 'my_content_type' && $vars['view_mode'] == 'panel_region_left') { $vars['theme_hook_suggestions'][] = 'node__my_content_type__panel_region_left'; } if ($vars['node']->type == 'my_content_type' && $vars['view_mode'] == 'panel_region_right') { $vars['theme_hook_suggestions'][] = 'node__my_content_type__panel_region_right'; } } これがどれだけ適切にキャッシュされ、どれだけのリソースが消費されるかはわかりません。アドバイスはありがたいです。

2
フィールドを手動またはプログラムで削除する方法は?
フィールドを作成しようとしましたが、スパムボット攻撃によりサーバーが内部サーバーエラーで途中で停止しました... ここで、フィールドをもう一度追加しようとすると、次のようになります。 機械可読名はすでに使用されています。それはユニークでなければなりません。 いくつかのテーブルがデータベースに入力されたと思います。これらを簡単に削除するにはどうすればよいですか?
8 7  entities 

2
Drush言語を変更する
突然、私のdrushは言語を切り替えて、私の母国語でエラーメッセージを表示します。残念ながら、これらのエラーの解決策を検索しようとすると、不便です。 Drushエラーの言語を英語に戻す方法を知っていますか?

1
賛成票ごとにユーザーポイントを追加する
私のdrupal 7サイトには、作者のコンテンツに対するユーザーレーティングシステムがありますが、問題は、すべての賛成票と反対票がユーザープロファイルにポイントを自動的に追加しないことです。しかし、私は、それはユーザーポイントモジュールによって可能だと思います。Userpoints Karmaモジュールページから、投票/アップダウンモジュールを使用すると、有権者が特定のノードまたはコメントの作成者にポイントを追加または削除できるため、作成者が書いた内容を授与または罰することができます。だから、私は投票/アップダウンモジュールを正常に設定しました、 これは私のウェブサイトのビューのスクリーンショットです:今私の質問は、投票/アップダウンモジュールとユーザーポイントモジュールを使用して投票のためにポイントを自動的に追加する方法です?したがって、ユーザーがコンテンツに投票した場合、そのコンテンツ作成者のユーザーポイントは10 + 5 = 15!{ 10これはコンテンツ作成者の以前のユーザーポイントであり、5すべての賛成投票の価値です!}自動的に行う方法がわかりません。何か案は?ありがとう

3
Ubercartと同様に、コマースで「空のラインアイテム」を取得する方法は?
Ubercartでは、「空のラインアイテム」を管理者が作成したオーダーに追加するための小さな機能があります。これにより、管理者はラインアイテムのカスタムタイトルとカスタム金額を手動で入力できました。基本的に、最初に製品を作成してから注文に添付するプロセスを経ずに、ラインアイテムを追加できます。カスタムサービスの請求書を作成するのに非常に役立ちます。Drupal Commerceでこの機能を入手する方法はありますか? これは、Ubercartでの外観と機能です。

3
言語スイッチャーの動作または表示を変更するにはどうすればよいですか?
翻訳されたページでは、言語スイッチャーは翻訳された言語へのリンクを表示しますが、翻訳されていない言語の場合、リンクはありませんが、リンクのない言語の名前があります。その場合、特定の言語に対応するノードがないため、代わりに言語スイッチャーにフロントページへのリンクを表示します。 どうすればこの動作を実現できますか?どうもありがとうございました!
8 7  theming  i18n-l10n 

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