wordpress-activitypub-event.../includes/plugins/interface-event-plugin.php

59 lines
1.2 KiB
PHP
Raw Normal View History

2024-09-06 14:58:21 +02:00
<?php
/**
* Interface for defining supported Event Plugins.
*
* Basic information that each supported event needs for this plugin to work.
*
* @package Activitypub_Event_Extensions
* @since 1.0.0
*/
namespace Activitypub_Event_Extensions\Plugins;
// Exit if accessed directly.
defined( 'ABSPATH' ) || exit; // @codeCoverageIgnore
/**
* Interface for a supported event plugin.
*
* This interface defines which information is necessary for a supported event plugin.
*
* @since 1.0.0
*/
interface Event_Plugin {
/**
* Returns the full plugin file.
*
* @return string
*/
public static function get_plugin_file(): string;
/**
* Returns the event post type of the plugin.
*
* @return string
*/
public static function get_post_type(): string;
/**
* Returns the ID of the main settings page of the plugin.
*
* @return string The settings page url.
*/
public static function get_settings_page(): string;
/**
* Returns the ActivityPub transformer class.
*
* @return string
*/
public static function get_activitypub_transformer_class_name(): string;
/**
* Returns the taxonomy used for the plugin's event categories.
*
* @return string
*/
public static function get_taxonomy(): string;
}