Een functionaliteit of plugin configureren

De configuratie van een functionaliteit of van een plugin betaat uit het definiëren van waardes voor de verschillende parameters. Je moet er dus een formulier voor maken waarmee je de waardes van die parameters kunt vastleggen en je moet deze in je skeltten kunnen opvragen.

De CVT formulieren laten je eenvoudig een configuratie-pagina maken voor ee functionaliteit van je site, of voor de configuratie van een plugin.

Een configuratie-methode die in SPIP2 beschikbaar was met de plugin Bonux, werd geïntegreerd in SPIP3.

  • Apparu en : SPIP 3.0

Configuratieformulier

Stel dat we een functionaliteit "truc" willen configureren.

  1. maak een CVT formulier waarvan de naam begint met «configurer_ », een leeg HTML bestand (dus zonder het definiëren van de functies charger, verifier en traiter).
  2. maak een pagina configurer_truc.html in prive/squelettes/contenu/ (voor SPIP 3) of in prive/exec/ (voor SPIP 2) binnen je plugin of je skelettenmap. Roep daarin het formulier aan met een eenvoudige #FORMULAIRE_CONFIGURER_TRUC.

Dat is alles!

Configuratie van een plugin

Wanneer «truc» de prefix van een plugin is, wordt een shortcut naar de configuratie-pagina automatisch toegevoegd aan de beheerpagina voor plugins (met het ikoon «gereedschap»).

Bijvoorbeeld: Voor de plugin ’mediabox’ bevat het bestand prive/squelettes/contenu/configurer_mediabox.html:

[(#AUTORISER{configurer,mediabox}|oui)
	<h1><:mediabox:titre_page_configurer_box:></h1>
	<div class="ajax">
		#FORMULAIRE_CONFIGURER_MEDIABOX
	</div>
]

Wil je dat dit item ook in het menu van het privé gedeelte wordt opgenomen, dan moet je het volgende toevoegen aan het bestand plugin.xml :

<bouton id='truc' parent='bando_configuration'>
	<titre>Truc (configuratie voorbeeld)</titre>   
</bouton>

Om de initiële configuratiewaarde (bijvoorbeeld deze_param) bij het aanmaken of aanpassen van een plugin in te stellen, voeg je aan de pipeline mijnplugin_upgrade() toe:

  • bij het aanmaken:
    $maj['create'] = array(
    	array('ecrire_config','mijnplugin/deze_param', '3'),
    );
    
  • bij een update:
    $maj['0.1'] = array(
    	array('ecrire_config','mijnplugin/deze_param', '3'),
    );
    

Om de waarde te verwijderen wanneer de plugin wordt verwijderd, voeg je aan de pipeline monplugin_vider_tables() toe:

effacer_config("mijnplugin/deze_param");

De geconfigureerde waardes benaderen

In een skelet benader je de configuratiewaardes door middel van het baken #CONFIG (bijvoorbeeld: #CONFIG{mijnplugin/deze_param})

In PHP gebruik je de functie lire_config met lire_config('mijnplugin/deze_param').

Om hem aan te passen gebruik je de functie ecrire_config:
ecrire_config('mijnplugin/deze_param', 3)

Autorisaties

Niet alle internetters hebben toegang tot de configuratie. Standaard zijn het de beheerders die deze mogelijkheid hebben, maar je kunt dit toegangsrecht tot het configuratieformulier aanpassen. Daarvoor gebruik je de PHP-API autoriser, of het baken #AUTORISER en het filter sinon_interdire_acces in het skelet van je formulier.

Voorbeeld: [(#AUTORISER{configurer,mediabox}|sinon_interdire_acces)]

Auteur Hanjo Gepubliceerd op: Aangepast: 21/03/23

Vertalingen: français, Nederlands