Hooks
Both filters are part of the public API. Add them in a child theme's functions.php or in your own plugin, never in the theme or Companion, which updates replace.
lanternwp_welcome_steps
Theme, since 0.2.1. Filters the steps of Appearance → LanternWP, the theme's welcome screen. Each step is an array with a title, a text, whether it is done and its actions, each a label and a url, and optionally primary for the step's main button. A step or an action without that shape is left out, so a mistake leaves the screen as it was.
An agency can add its own setup steps for a client:
add_filter( 'lanternwp_welcome_steps', function ( array $steps ): array {
$steps[] = [
'title' => __( 'Connect your payment provider', 'my-agency' ),
'text' => __( 'The store takes cards once it is connected.', 'my-agency' ),
'done' => my_agency_payments_ready(),
'actions' => [
[
'label' => __( 'Payment settings', 'my-agency' ),
'url' => admin_url( 'admin.php?page=wc-settings&tab=checkout' ),
'primary' => true,
],
],
];
return $steps;
} );
lanternwp_demo_server
Companion, since 0.1.0. Filters the demo store the Appearance → Demos screen lists and imports demos from: https://lanternwp.com by default. Return the address of another store that serves the same API, such as a copy of lanternwp.com for development. A value that is not a valid URL is ignored. wp lanternwp demo import does not use it; it takes --server instead (WP-CLI).
add_filter( 'lanternwp_demo_server', fn () => 'https://demos.example.test' );