Drupal

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

2
移行の失敗:on句があいまいです
私はmigrate初めてモジュールを使用していて、db_selectAPIを少し使用しましたが、エラーが発生しています。 いくつかの古いラベルをdrupalタクソノミーに変換しようとしています。/admin/content/migrateページを参照すると、クエリが正しく実行され、移行する必要のある正しい行数が表示されます。しかし、実際にインポートを実行しようとすると、次のエラーが発生します。 ソースプラグインの例外により移行が失敗しました:SQLSTATE [23000]:整合性制約違反:1052 on句の列 'labelId'があいまいです これが、LabelMigrationクラスにあるコードです。 $this->map = new MigrateSQLMap($this->machineName, array( 'labelId' => array('type' => 'int', 'not null' => TRUE) ), MigrateDestinationTerm::getKeySchema() ); $query = db_select('migrate_account_label', 'l') ->fields('l', array('labelId', 'label')) ; $query->leftJoin('migrate_asset_labels_membership', 'lm', 'l.labelId = lm.labelId'); $query->leftJoin('migrate_asset', 'a', 'lm.assetId = a.assetId'); $query->addExpression('count(*)', 'num'); $query->condition('a.type', 'B'); $query->groupBy('l.labelId'); $query->groupBy('l.label'); $this->source = …
9 7  database  migration 




3
ウェブフォームのメールテンプレートで[submission:values]を使用する方法
Webform 7.x-4.0-alpha6バージョンモジュールを有効にしています。 20個のフォームコンポーネントを持つWebformノードがあります。メール設定にメールを1つ追加し、トークンを使用するメールテンプレート[submission:values]を作成しました。 次に、メッセージを送信するWebフォームをテストします。問題は、[submission:values]がコンポーネントの値を非常に単純な方法で出力すること、改行なし、セミコロンなしで各コンポーネントのタイトルと値を区別することです。何かのようなもの: Name Jhon Addresss Myaddress 12 CP 19932 .... 20個のコンポーネントがあると、メールが完全に読めなくなります 私の質問は:少なくともタイトルと値の間にセミコロンを追加し、タイトルを太字にする、より良い方法でそれらを印刷する方法(トークン)はありますか?または出力をテーブルに入れますか? Name: Jhon Addresss: Myaddress 12 CP: 19932 トークンを使用して、コンポーネントを別々の方法で出力できることを知っています。タイトルには[webform:{component} -title]、値には[webform:{component} -value] そして、私はそれらをスタイルすることができます。しかし、メールテンプレートにすべてのコンポーネントを表示する必要があるため、これは時間の無駄です 更新:このモジュールは見つかりましたが、助けにはなりません:http : //drupal.org/project/webform_tokens

3
drupalメニューを完全にワイプして再構築する方法は?
少し前に、メニューテーブルを空にして、drush php呼び出しでメニューシステムを再構築する方法を詳しく説明したクールなブログ投稿を見つけました。これらのmysqlテーブルを空にするとサイトが使用できなくなるため、必要です。これにより、新しいDrupalサイトのようにメニューをリセットできます。 誰かがこのテクニックを詳しく説明できますか、そのブログへのリンクはありますか?
9 7  routes  drush 

3
ビューの「添付ファイル」、「コンテンツペイン」、「コンテキスト」の目的は何ですか?
コンテンツタイプのビューを作成しました。 1つのビューで、コンテンツタイプのページとフロントページの最新の4つの投稿のプレビューが必要です。 ページは問題ではありません。フロントページのプレビューでは、「添付」、「コンテンツペイン」、「コンテキスト」の目的について混乱しました。フロントページのプレビューにどちらを使用するかわかりません。 パネルモジュールが無効になっているため、「コンテキスト」にはリンクが追加されておらず、「コンテンツペイン」はパネルペイン用ではありません。
9 7  views 

1
プログラムによる複数のブロックの作成
Drupal 7のカスタムモジュールを作成しています。モジュールを使用して5つの異なるブロックを作成する必要があります。Drupalには、ブロックを作成するhook_block_infoおよびhook_block_viewフックがあります。これらのフックはモジュールごとに1つのブロックしか許可しないので、どうすれば複数のブロックを追加できますか?
9 7  blocks 

5
一度に複数のコンテンツタイプにフィールドを追加しますか?
一度に複数のコンテンツタイプにフィールドを追加し、すべてのコンテンツタイプに対しても同時に設定したいと考えています。 理由は、私には多くのコンテンツタイプがあり、それぞれにこの新しいフィールドを追加することによってすべて更新する必要があるということです。このフィールドは、すべてのコンテンツタイプでも同じように構成されます。フィールドを追加したいすべてのコンテンツタイプを追加してから構成するこのプロセスを繰り返す必要があり、しばらくすると手間がかかります。 多くのコンテンツタイプに新しいフィールドを大量に追加/構成する方法はありますか?
9 7  entities  nodes 

3
1時間あたり数千のノードをライブdrupal 7サイトにアップロードし、デッドロックを回避するにはどうすればよいですか?
長すぎない前に、私はここにデッドロックについて書いた:PDOException:SQLSTATE [40001]:シリアル化の失敗:1213ロックを取得しようとしたときにデッドロックが見つかりました。 私の開発チームがやろうとしていることは何でも、次のようなエラーが発生します。 PDOException:SQLSTATE [40001]:シリアル化の失敗:1213ロックを取得しようとしたときにデッドロックが見つかりました。トランザクションを再起動してみてください:INSERT INTO {location_instance}(nid、vid、uid、genid、lid)VALUES(:db_insert_placeholder_0、:db_insert_placeholder_1、:db_insert_placeholder_2、:db_insert_placeholder_3、:db_insert_placeholder_4); 配列([:db_insert_placeholder_0] => 1059 [:db_insert_placeholder_1] => 1059 [:db_insert_placeholder_2] => 0 [:db_insert_placeholder_3] => cck:field_item_location:1059 [:db_insert_placeholder_4] => 1000)in location_save_locations()(line 974 /var/www/website.com/sites/all/modules/location/location.module)。 その例の特定のテーブルにもかかわらず、他のテーブルでこのエラーが発生します。 これが私の状況です。私は大規模な大学のプロジェクトを受けました。常時、50,000人のキャンパス住民がこのシステムを毎日使用しています。それに加えて、私は手動で、およびカスタムモジュールコード(古い大学のデータからの移行)を通じて、何百もの数千のコンテンツアイテムをこの新しいDrupal 7サイトに移行しています。 Drupalがこのタイプの負荷を処理できない場合、このエラーは私たちを殺し、最後の年の価値のある作業を廃棄し、他の何かに進む準備がほぼ整います。 しかし、それは多かれ少なかれ私の質問です-Drupalはこのタイプの負荷をどのように処理できますか?これだけのアクティビティを処理できるようにワークフローを整理するにはどうすればよいですか?これはDrupalの問題ですか?データベースの問題? 具体的には、Ubuntu、LAMPスタック16GB RAMを実行しています。Drupal関連、データベース関連、サーバー構成関連、Drupalの機能の範囲内で動作する別のワークフローなど、どんな提案でも受け付けています。このような活動の経験がある場合は、遠慮なく提案してください。

4
ログインしたユーザーのみが特定のページを利用できるようにする
私はいくつかの助けが必要です、そしてここに問題があります: Drupal 7を使用してサイトを構築しています。 特定のページをログインしているユーザーのみに表示する必要があります(それぞれに独自のユーザー名/パスワードがあります)。他のユーザーは単にリダイレクトされるか、エラーメッセージが表示されます。この機能はDrupal 7自体に含まれているのでしょうか、それともこれを行うモジュール(Organic Groupsよりも簡単なもの)はありますか?
9 7 

3
プログラムでノードを作成しながら、プログラムで画像を追加するにはどうすればよいですか?
プログラムでノードを追加するスクリプトを書いていますが、イメージを追加/アタッチする適切な方法がわかりません。実際、私はDrupalにそれほど慣れていません。 これは、私が使用してprint_rいる既存のもの$nodeをingしているときに見つけた(サンプル)画像オブジェクトです。 field_image:Array([und] => Array([0] => Array([fxid] => 3089 [alt] => [title] => [width] => 95 [height] => 126 [uid] = > 249 [ファイル名] => helloworld.jpg [uri] => public://helloworld.jpg [filemime] => image / jpeg [filesize] => 3694 [status] => 1 [timestamp] => 1346748001 [type ] => image [media_title] =>配列()[media_description] =>配列()[field_tags] …
9 nodes  media 

3
LIKE句がフッククエリの変更で機能しない
Drupal 7でデフォルトの検索をLIKE句に置き換えようとしています。既存のクエリへのOR条件の追加に従ってクエリを変更しようとしました。 function MYMODULE_query_node_access_alter(QueryAlterableInterface $query) { foreach ($query->getTables() as $table) { // LIKE for search results. if ($table['table'] == 'search_index') { // Get the query args and then the search term $args =& $query->getArguments(); $search = $args[':db_condition_placeholder_1']; // Get a reference to the existing query conditions. $conditions =& $query->conditions(); // …
9 7  database 

1
custom.moduleとtemplate.php
これはそれほど対象を絞った質問ではありませんが、これに関する適切な情報は見つかりません。 template.phpファイル内にコードを配置するのが正しい方法と見なされるのはいつですか、いつモジュールに実装するのですか? 私の現在の例では、hook_preprocess_nodeを呼び出して内部でdrupal_get_formを実行し、そのフォームをレンダリングする必要があることを意味します。ロジックをtemplate.phpに入れました。 あれは正しいですか?そうでない場合、問題に関するDOSとDONTSの短いリストを教えていただけますか?
9 theming 

2
インストールプロファイル中にsettings.phpをカスタマイズする方法
現在の社内プロジェクトのインストールプロファイルを作成しています。 インストールプロセス中init()に、で定義された1つのグローバル変数settings.php(モジュールの現在のデフォルトの動作)を使用しようとするため、カスタムモジュールの1つが中にクラッシュします。 使用してsystem_form_install_settings_form_alter()、私は、ユーザーの入力のための一つの入力テキストフィールドを追加することにより、設定フォームを変更して、上の値を提出することに追加されsettings.phpますが、settings.phpプロファイルのインストールを開始する前に書き換え中です。 settings.phpインストールプロセスによるクリーンアップを防ぐ方法はありますか?

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