Automattic\WooCommerce\Internal\ProductFeed
ProductFeed{}└─ RegisterHooksInterface
Main Product Feed class.
No Hooks.
Usage
$ProductFeed = new ProductFeed(); // use class methods
Methods
- public activate()
- public deactivate()
- public init(
- public register()
- public register_integration( IntegrationInterface $integration )
Changelog
| Since 10.5.0 | Introduced. |
ProductFeed{} ProductFeed{} code WC 10.7.0
final class ProductFeed implements RegisterHooksInterface {
/**
* Integration registry.
*
* @var IntegrationRegistry
*/
private IntegrationRegistry $integration_registry;
/**
* Dependency injector.
*
* @param IntegrationRegistry $integration_registry The integration registry.
* @param POSIntegration $pos_integration The POS integration.
* @internal
*/
public function init( // phpcs:ignore WooCommerce.Functions.InternalInjectionMethod.MissingFinal
IntegrationRegistry $integration_registry,
POSIntegration $pos_integration
): void {
$this->integration_registry = $integration_registry;
$this->integration_registry->register_integration( $pos_integration );
}
/**
* Allows extensions to register integrations.
*
* @since 10.5.0
* @param IntegrationInterface $integration The integration to register.
* @return void
*/
public function register_integration( IntegrationInterface $integration ): void {
$this->integration_registry->register_integration( $integration );
}
/**
* Initialize plugin components
*
* @since 10.5.0
*/
public function register(): void {
// Let all integrations register their hooks.
foreach ( $this->integration_registry->get_integrations() as $integration ) {
$integration->register_hooks();
}
}
/**
* Plugin activation
*
* @since 10.5.0
*/
public function activate(): void {
foreach ( $this->integration_registry->get_integrations() as $integration ) {
$integration->activate();
}
}
/**
* Plugin deactivation
*
* @since 10.5.0
*/
public function deactivate(): void {
foreach ( $this->integration_registry->get_integrations() as $integration ) {
$integration->deactivate();
}
}
}