Entfernen Sie Standardinstallationsprofile mit Drupal Core

7

Gibt es eine Möglichkeit, die mit Drupal gelieferten Core-Installationsprofile zu entfernen, ohne dass ein Core gehackt werden muss? dh gibt es einen Hook, der ausgeführt werden kann, um diese Liste zu ändern?

Der Grund, warum dies erforderlich ist, besteht darin, dass wir ein benutzerdefiniertes Installationsprofil für die Verwendung mit aegir erstellen und nicht möchten, dass die Standard-Core-Drupal-Installationsprofile "minimal" und "standard" als Optionen für die Benutzer zum Erstellen neuer Websites verwendet werden.

Vielleicht könnte dies ein Haken in der Luft sein?

Hat jemand eine elegante Lösung dafür gefunden?

wiifm
quelle
2
Ich habe keinen Haken dafür gefunden, ich denke, Sie haben nicht viele Möglichkeiten, aber entfernen Sie die minimalen und Standardordner aus / profile
Mika A.
Einverstanden ... Ich habe die Profile immer nur manuell bearbeitet oder nach Bedarf gelöscht. Dies ist sicherlich eine Schwäche von Aegir, wie es derzeit funktioniert.
Jim Kirkpatrick

Antworten:

3

Erstellen Sie ein einfaches Modul für Ihre Aegir-Instanz, das implementiert hook_form_alter(), um die Standard- / Minimalprofiloptionen auszublenden.

kostajh
quelle
4

Sie müssen eine exclusive = 1Zeile in die .info-Datei Ihres Profils einfügen.

Nicolae Grigoriu
quelle
1

So habe ich es gemacht und lass es mich bitte wissen, wenn es einen klügeren Weg gibt.

  1. Aus dem Kern habe ich gelernt, dass die Installation ein Wartungsthema oder 'sieben' verwendet, wenn keines definiert ist. Also habe ich ein neues Unterthema 'my_install' erstellt. Sieben Thema ist sein Grundthema. Ich habe die logo.png durch das Logo meiner Site ersetzt, template.php erstellt und hook_form_alter () hinzugefügt, um die Standard- und Minimum-Profile zu deaktivieren:

    function my_install_form_alter(&$form, &$form_state, $form_id) {
      if ($form_id == 'install_select_profile_form') {
        $form['profile']['My profile']['#attributes'] = array('checked' => 'checked'); 
        unset($form['profile']['Standard']);
        unset($form['profile']['Minimal']);
      }
    }
    
  2. Um die Installation für das my_install-Design durchzuführen, habe ich sie geändert settings.phpund default.settings.phpzu beiden hinzugefügt

    $conf['maintenance_theme'] = 'my_install';

das ist es.

Vahan
quelle