Dies ist ein nicht triviales Problem, auf das fast jeder eine andere Antwort hat: Es gibt keine kanonische Drupal-Methode, um die Inszenierung für Produktionsschübe zu handhaben. Dries Buytaert, der die Drupal-Show leitet, hat sie zu einer der Schlüsselinitiativen von Drupal 8 gemacht . Natürlich wurde Drupal 7 gerade erst veröffentlicht, es wird also noch eine Weile dauern, bis es Früchte trägt.
Das Problem kann in zwei separate Punkte unterteilt werden:
- Staging-Konfiguration (Variablen, Inhaltstypen, Felder, Ansichten usw.)
- Bereitstellen von Inhalten (Knoten, Benutzer usw.)
Ersteres kann größtenteils vom Funktionsmodul übernommen werden, das Ihre Site-Konfiguration in ein Modul umwandelt, das Sie Ihrer Drupal-Installation hinzufügen können. Auf diese Weise können Sie es Ihrem Versionskontrollsystem hinzufügen, ohne sich darum kümmern zu müssen wird weggeblasen, wenn Sie Ihre Inhalte migrieren.
Letzteres ist sehr schwierig, da sich der Inhalt auf einer aktiven Site wahrscheinlich auch nach der ersten Synchronisierung mit Ihrer Entwicklungsumgebung während der Produktion ändert. Auf diese Weise wird verhindert, dass Inhalte während der Bereitstellung vollständig ersetzt werden, wie dies bei der Konfiguration der Fall ist.
Darüber hinaus verwendet Drupal keine UUIDs (Universal Unique Identifiers) für Inhalte: Jedes Mal, wenn ein Knoten oder ein Benutzer hinzugefügt wird, wird die ID um eins erhöht. Das heißt, Knoten 45 auf Ihrer Entwicklungssite ist möglicherweise Knoten 90 auf Ihrer Produktionssite.
Leider habe ich keine gute Lösung dafür: Die Bereitstellung von Inhalten ist eine echte Schwäche von Drupal. Ich persönlich füge nur Inhalte auf der Produktionsseite hinzu. Wenn ein Kunde sehen möchte, wie der Inhalt aussieht, bevor er live geschaltet wird, richte ich einen Klon der Produktionssite ein, auf den nur der Kunde zugreifen kann. Sobald die Genehmigung vorliegt, werden dieselben Änderungen direkt an der Produktion vorgenommen.
Es gibt noch eine andere Alternative, die sich herumwirbelt : das Bereitstellungsmodul . Es soll Services nutzen , um die Bereitstellung von Inhalten relativ einfach zu gestalten. Aber ich kann nicht für seine Wirksamkeit bürgen und es gibt keine Drupal 7-Version.