wordpress-event-bridge-for-.../includes/integrations/class-gatherpress.php

79 lines
1.9 KiB
PHP
Raw Normal View History

2024-09-06 14:58:21 +02:00
<?php
/**
* GatherPress.
*
* Defines all the necessary meta information for the GatherPress plugin.
*
* @link https://wordpress.org/plugins/gatherpress/
* @package Event_Bridge_For_ActivityPub
2024-09-06 14:58:21 +02:00
* @since 1.0.0
*/
namespace Event_Bridge_For_ActivityPub\Integrations;
2024-09-06 14:58:21 +02:00
// 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
*/
final class GatherPress extends Event_Plugin {
2024-09-06 14:58:21 +02:00
/**
* Returns the full plugin file.
*
* @return string
*/
public static function get_plugin_file(): string {
return 'gatherpress/gatherpress.php';
2024-09-06 14:58:21 +02:00
}
/**
* Returns the event post type of the plugin.
*
* @return string
*/
public static function get_post_type(): string {
return class_exists( '\GatherPress\Core\Event' ) ? \GatherPress\Core\Event::POST_TYPE : 'gatherpress_event';
2024-09-06 14:58:21 +02:00
}
/**
* Returns the IDs of the admin pages of the plugin.
2024-09-06 14:58:21 +02:00
*
* @return array The settings page urls.
2024-09-06 14:58:21 +02:00
*/
public static function get_settings_pages(): array {
return array( class_exists( '\GatherPress\Core\Utility' ) ? \GatherPress\Core\Utility::prefix_key( 'general' ) : 'gatherpress_general' );
2024-09-06 14:58:21 +02:00
}
/**
* Returns the ActivityPub transformer class.
*
* @return string
*/
public static function get_activitypub_transformer_class_name(): string {
return 'GatherPress';
}
/**
* Returns the taxonomy used for the plugin's event categories.
*
* @return string
*/
2024-09-18 21:26:53 +02:00
public static function get_event_category_taxonomy(): string {
return class_exists( '\GatherPress\Core\Topic' ) ? \GatherPress\Core\Topic::TAXONOMY : 'gatherpress_topic';
2024-09-06 14:58:21 +02:00
}
/**
* GatherPress supports the Event Sources feature.
*
* @return bool True if event sources are supported.
*/
public static function supports_event_sources(): bool {
return true;
}
2024-09-06 14:58:21 +02:00
}