Definitie

Een pipeline wordt gebruikt om een van de standaardfuncties van SPIP een andere of extra functionaliteit te laten uitvoeren door deze op maat gemaakte functies door te geven die automatisch op de juiste momenten worden geactiveerd.

Declaratie binnen een plug-in

Elke plug-in kan elke bestaande pipeline gebruiken. Om dit te doen declareert het deze in het bestand plugin.xml zoals hieronder geïllustreerd:

<pipeline>
   <nom>header_prive</nom>
   <inclure>cfg_pipeline.php</inclure>
</pipeline>
  • nom: specificeert de naam van de te gebruiken pipeline,
  • inclure: specificeert de naam van het bestand dat de functie bevat die moet worden uitgevoerd wanneer de pipeline wordt aangeroepen (pluginprefix_naampipeline()).

Declaratie zonder gebruikmaking van een plug-in

Een gebruik van een pipeline buiten een plug-in blijft wel mogelijk. In dit geval moet het direct worden aangegeven in het bestand config/mes_options.php:

$GLOBALS['spip_pipeline']['naam_van_de_pipeline'] .= "|naam_van_de_functie";
// Voorbeeld voor toevoeging "insert_head" pipeline:
$GLOBALS['spip_pipeline']['insert_head'] .= "|naam_van_de_functie";
 
function naam_van_de_functie($flux) {
	return $flux .= "Deze tekst wordt toegevoegd";
}

De aangeroepen functie moet al worden opgegeven op het moment dat de pipeline wordt aangeroepen, waarbij de eenvoudigste oplossing is om deze als hierboven te declareren met een functie naam_van_de_functie gedefinieerd in het optiebestand.

Merk op dat SPIP gebruik maakt van een cache van gebruikte pipelines en dat deze cache bij iedere nieuwe declaratie moet worden ververst. Dit kan worden gedaan door te gaan naar "Plugin beheer" in het privé gedeelte (?exec=admin_plugin).

Auteur hanjo Gepubliceerd op:

Vertalingen: English, français, Nederlands