Skip to content

Extending ConReg

Extension approach

The core extension seam is member lifecycle hooks fired from Member save and delete operations. For extension points with multiple, selectable, orderable implementations (pricing rules, mailing-list providers), ConReg uses Drupal plugins instead — see docs/development/plugins.md.

Example hook skeleton

<?php

use Drupal\conreg\Member;

function mymodule_convention_member_updated(Member $member): void {
  // Custom integration logic.
}

Design notes

  • Prefer service injection in new code.
  • Preserve hook argument type expectations used by existing submodules.