Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,075 of 9,075 pages
About the help in other languages
All help pages

Einstellungen mit exp:ini ändern

Jedes Verb des Einstellungsbefehls - get, set, add, rem, clear, toggle, copy, move, move-all, where, list, scopes - mit seinen Ebenen, Probeläufen, Sicherungen, JSON-Ausgabe und Exit-Codes, und Rezepte für häufige…

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/help/extension-development/part-2-builder/the-exp-ini-command.md

On this page

This page is a translation. Read the English original

Einstellungen mit exp:ini ändern

Teil 2, Kapitel 5. ./console exp:ini (das Skript bin/php/ini.php) liest und ändert Einstellungen in jeder Ebene von der Kommandozeile aus. Es schreibt Dateien Zeile für Zeile und behält Kommentare, Leerzeilen und Reihenfolge bei; es schreibt atomar, legt eine Sicherung an und leert danach den INI-Cache. Es ist das wichtigste Werkzeug des Builders, und alles auf dieser Seite stammt aus seiner eigenen --help.

Die Syntax

./console exp:ini <action> <arguments> [options]

Eine Einstellung wird file/Block/Variable geschrieben (die Endung .ini ist optional); Arrays enden auf [], Hash-Einträge auf [key]. Zwei andere Schreibweisen werden ebenfalls angenommen: site.ini:SiteSettings.SiteName und "site.ini [SiteSettings] SiteName".

Lesen

AktionBeispielZeigt
getexp:ini get site.ini/SiteSettings/SiteNameden wirksamen Wert (oder, mit einer Ebene, den Wert, den die Datei dieser Ebene liefert)
whereexp:ini where site.ini/SiteSettings/SiteNamejede Datei, die ihn setzt, in Ladereihenfolge, und das Ergebnis
listexp:ini list site.ini/DebugSettingsdie Variablen eines Blocks oder die Blöcke einer Datei
scopesexp:ini scopes extensiondie Ebenen dieser Installation und das Verzeichnis, in das jede schreibt
actionsexp:ini actionsdie eingebauten Aktionen und die von Erweiterungen registrierten

-s <siteaccess> wertet get, where und list so aus, wie dieser Siteaccess sie sieht. Werte von Variablen, deren Name Password, Secret, Token oder Salt enthält oder auf Key endet, werden maskiert, außer Sie geben --show-secrets an.

Schreiben

AktionBeispielTut
setexp:ini set site.ini/SiteSettings/SiteName "My site" globalsetzt eine Variable oder einen Hash-Eintrag
addexp:ini add 'site.ini/ExtensionSettings/ActiveExtensions[]' mysite_settings globalhängt an ein Array an
remexp:ini rem site.ini/SiteSettings/SiteName globalentfernt eine Variable, einen Array-Wert oder einen Hash-Eintrag
clearexp:ini clear 'site.ini/RegionalSettings/SiteLanguageList[]' siteaccess:mysiteschreibt die Rücksetzzeile, sodass die Werte früherer Dateien entfallen
toggleexp:ini toggle site.ini/DebugSettings/DebugOutput globalschaltet zwischen enabled/disabled, true/false, yes/no, 1/0 um
copyexp:ini copy site.ini/DesignSettings/SiteDesign siteaccess:site siteaccess:gerkopiert eine Einstellung zwischen Ebenen
moveexp:ini move site.ini/DesignSettings siteaccess:mysite extension:mysite_settingsverschiebt einen Block oder eine ganze Datei
move-allexp:ini move-all siteaccess:mysite extension:mysite_settings:siteaccess:mysite --create-extensionverschiebt jede Datei einer Ebene

Setzen Sie -- vor einen Wert, der mit einem Bindestrich beginnt: exp:ini set site.ini/MySettings/Offset -- -1 global.

Ebenen

EbenenwortGeschriebene Datei
global (oder override)settings/override/<file>.ini.append.php
siteaccess:<sa> (oder nur <sa>)settings/siteaccess/<sa>/<file>.ini.append.php
extension:<ext>extension/<ext>/settings/<file>.ini.append.php
extension:<ext>:siteaccess:<sa>extension/<ext>/settings/siteaccess/<sa>/<file>.ini.append.php
defaultsettings/<file>.ini; ohne --allow-default verweigert (verwenden Sie es nicht)

Erweiterungen können in ini.ini [IniCommandSettings] ScopeProviders[] weitere Ebenen registrieren.

Optionen, die Sie schützen

OptionStandardWirkung
--dry-runausden Diff zeigen, nichts schreiben
--backup / --no-backupSicherungdie Datei zuerst nach var/backup/ini/<timestamp>/ kopieren
--clear-cache / --no-clear-cacheleerenden INI-Cache nach einem Schreibvorgang leeren
--create / --no-createanlegen bei set, add, clear, toggle, copyeine fehlende Datei und einen fehlenden Block anlegen
--jsonausein JSON-Objekt: ok, code, action, message, warnings, data
--root=<dir>die Installationmit dem Einstellungsbaum einer anderen Installation arbeiten (ein Checkout, eine Kopie)

Exit-Codes: 0 erledigt oder nichts zu ändern, 1 Bedienungsfehler, 2 nicht gefunden, 3 verweigert, 4 Schreiben fehlgeschlagen. Skripte können sich darauf verlassen.

Rezepte

Die Debug-Ausgabe nur für Ihre eigene Adresse einschalten:

./console exp:ini set site.ini/DebugSettings/DebugOutput enabled global
./console exp:ini set site.ini/DebugSettings/DebugByIP enabled global
./console exp:ini add 'site.ini/DebugSettings/DebugIPList[]' 192.0.2.10 global

(192.0.2.10 ist eine Dokumentationsadresse; verwenden Sie Ihre.)

Einer Website eine eigene Sprachliste geben:

./console exp:ini clear 'site.ini/RegionalSettings/SiteLanguageList[]' siteaccess:mysite
./console exp:ini add 'site.ini/RegionalSettings/SiteLanguageList[]' eng-US siteaccess:mysite
./console exp:ini add 'site.ini/RegionalSettings/SiteLanguageList[]' ger-DE siteaccess:mysite

Herausfinden, warum die Einstellung einer Erweiterung ignoriert wird:

./console exp:ini where design.ini/ExtensionSettings/DesignExtensions -s mysite

Eine Änderung in einem Checkout vor dem Deployment prüfen:

./console exp:ini where site.ini/DesignSettings/SiteDesign --root=/path/to/checkout

Aus einem Skript

Dank --json und der Exit-Codes lässt sich exp:ini sicher in Deployment-Skripten verwenden:

./console exp:ini get site.ini/SiteSettings/SiteName --json

Lesen Sie die Felder ok und data, statt Text zu parsen.

Verwandte Seiten

Werden Sie Exponential-Partner

Partner teilen ihre Informationen, stellen Mittel bereit, geben Beiträge zurück und entwickeln die Produkte mit uns, und so wächst Exponential. Eine Partner-Website und ein Dashboard sind für Mitte 2027 geplant: Werden Sie noch heute Partner, damit wir schneller wachsen und neue Funktionen früher liefern.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x