既存のDrupalサイトには約1万人のユーザーを引き継ぐ必要があるため、データベースのCSVエクスポートとビューエクスポート/ VBOを介してこのデータのほとんどを収集できました。 。2つのCSVがあります。1つはユーザー名、パスワードハッシュ、UID、もう1つはユーザーフィールドデータと、インポート中にデータを結合/結合するUIDです。継承したサイトデータとサイトデータでは、フィールド構造に違いがあります新しいサイト。インポート中に新しいデータの関係を確立し、既存のデータベースレコードの直接ポートを除外する必要があります。
結合されたCSVですべてのユーザーをインポートするDrushスクリプトを作成しても問題はありません。 Drupalユーザースペース内にパスワード文字列を入力して、ユーザーレコードをインポートすることが可能かどうかを考えています。user_save()メソッドを見ると、ユーザーID、またはパスワードハッシュ。これに依存する多くのロジックが実装されています。
だから私が頭の中で持っているアプローチはこれです:
厳密にDrushベースの別のアプローチを使用できますか?これは、インポートするデータが結合CSVファイルであると想定しています。 UIDを調整できないことは、おそらくこれが不可能であることを意味しますが、尋ねる価値はあります。
Feeds モジュールを使用しているようです!フィールドのソースから宛先へのマッピングをサポートし、場合によってはエンティティを自動作成します。
モジュールをインストールして有効にしたら、Feeds Importer(Structureの下)を作成してそこから移動します。/importに移動して、CSVファイルをフィードインポーターにアップロードして処理します。
サンドボックスモジュールDrush Feeds Importがあり、必要に応じてコマンドラインからこれを実行できます。
チェックアウト:
フィードへのサイトビルダーのガイド:
ストックFeedsモジュールで問題が解決しない場合は、Feeds APIを使用して、データを操作し、新しいサイトに挿入する独自の処理クラスを定義できます。