diff --git a/.wordpress-org/decentralized-event-calenders.gif b/.wordpress-org/decentralized-event-calenders.gif new file mode 100644 index 0000000..5e32d2b Binary files /dev/null and b/.wordpress-org/decentralized-event-calenders.gif differ diff --git a/.wordpress-org/event-activitypub-publishing.gif b/.wordpress-org/event-activitypub-publishing.gif new file mode 100644 index 0000000..8d57db0 Binary files /dev/null and b/.wordpress-org/event-activitypub-publishing.gif differ diff --git a/README.md b/README.md index c85074f..de3fd0e 100644 --- a/README.md +++ b/README.md @@ -1,26 +1,92 @@ -This is a WordPress plugin improves the Fediverse integration of Events via the [WordPress ActivityPub plugin](https://wordpress.org/plugins/activitypub/). +# ActivityPub Event Extensions -> **_NOTE:_** This is still pre-alpha. It is not more than a skeleton/playground. Things change rapidly. Please contact us, instead of trying it out yourself at this time. +Contributors: andremenrath +Tags: events, fediverse, activitypub,, calendar +Requires at least: 6.5 +Tested up to: 6.6 +Stable tag: 0.1.0 +Requires PHP: 8.1 +License: AGPL-3.0-or-later +License URI: https://www.gnu.org/licenses/agpl-3.0.html -For more information checkout our website https://event-federation.eu/. You can follow updates via [RSS](https://event-federation.eu/feed/) or ActivityPub: [@blog@event-federation.eu](https://event-federation.eu/blog/). +Integrating popular event plugins with the ActivityPub plugin. -## Goals -* Proper ActivityPub (JSON-LD) representation of events within WordPress -* Improving the setup and configuration workflow of ActivityPub -* Researching/Implementing federated RSVP/attendee management +![](.wordpress-org/banner-1544x500.jpg) -## Supported Event Plugins +## Description -### Events plugin that will be supported at first: +Make your events more discoverable, expand your reach effortlessly while being independent of other (commercial) platforms, and part of the growing decentralized web. +With the ActivityPub Event Extensions Plugin for WordPress, your events can be automatically aggregated and displayed across decentralized platforms like [Mastodon](https://joinmastodon.org) or [Gancio](https://gancio.org), without any extra work. +Forget the hassle of managing multiple social media accounts just to keep your audience informed. + +This plugin is not an event managing plugin but an add-on to popular event plugins. It extends their functionality to fully support the [ActivityPub plugin](https://wordpress.org/plugins/activitypub/). +With the ActivityPub plugin people can follow your website directly and engage with your events just as they would on social media - liking, boosting and even commenting if you enable it. +You retain full ownership of your content. By integrating into your existing setup, it ensures no extra work is needed while enhancing your events' visibility across the Fediverse. + +### How It Works + +With the Event Federation Plugin for WordPress, sharing your events is effortless and automatic! +Once you create an event on your WordPress site, it is seamlessly shared across the decentralized web using the ActivityPub protocol. + +

+ Logo +

+ +Your events can be automatically delivered to platforms that fully support events, such as [Mobilizon](https://joinmobilizon.org/), [Gancio](https://gancio.org), [Friendica](https://friendi.ca), [Hubzilla](https://hubzilla.org), and [Pleroma](https://pleroma.social/). +These platforms build public event calendars utilizing multiple event sources, including your site. Updates are also handled automatically whenever you make changes — no extra work for you than managing the event on your own website. + +

+ Logo +

+ +Even platforms that don’t yet fully support events, like [Mastodon](https://joinmastodon.org), will still receive a detailed, well-composed summary of your event. +The Event Federation Plugin ensures that users from those platforms are provided with all important information about an event. + +## Installation + +This plugin depends on the [ActivityPub plugin](https://wordpress.org/plugins/activitypub/). Additionally, you need to use one of the supported Event Plugins. See below. + +### Supported Event Plugins * [The Events Calendar](https://de.wordpress.org/plugins/the-events-calendar/) * [VS Event List](https://de.wordpress.org/plugins/very-simple-event-list/) * [Events Manager](https://de.wordpress.org/plugins/events-manager/) -* [GatherPress](https://github.com/GatherPress/gatherpress) -### Later: -- [All in One Events Calendar](https://de.wordpress.org/plugins/all-in-one-event-calendar/) -- TBA +## Configuration -### Your event plugin: -- [**Contact us**](https://event-federation.eu/contact/), if you want to see your event plugin on the list. +If you’re new to the [ActivityPub plugin](https://wordpress.org/plugins/activitypub/), it’s recommended to spend a few minutes reading through its documentation to familiarize yourself with its setup and functionality. + +## Frequently Asked Questions + +### Do I need to install another event plugin to use the Event Federation Plugin? + +Yes, this plugin works needs a supported event plugin such as The Events Calendar, VS Event List, or Events Manager to manage your events. It just fills the missing gap between event plugins and the [ActivityPub plugin](https://wordpress.org/plugins/activitypub/). + +### What platforms can follow my events? +Your events can be followed on platforms that support ActivityPub like [Mobilizon](https://joinmobilizon.org/), [Gancio](https://gancio.org), [Friendica](https://friendi.ca), [Hubzilla](https://hubzilla.org), and [Pleroma](https://pleroma.social/). Even other applications like [Mastodon](https://joinmastodon.org), which don’t fully support events yet, will display a all important information about the events. + +### How much extra work is required to maintain my events across the decentralized Web? + +None! Once the plugin is set up, your events are automatically sent to all connected platforms or account that follow you (your Website). Any updates you make to your events are synced without additional effort. + +### Can I still use social media to promote my events? + +Yes, you can still use traditional social media if you wish. However, this plugin helps reduce reliance on commercial platforms by connecting your events to the decentralized Fediverse. + +### Will this plugin work if I don't use the ActivityPub plugin? + +No, the Event Federation Plugin depends on the ActivityPub plugin to deliver your events across decentralized platforms, so it's essential to have it installed and configured. + +### My event plugin is not supported, what can I do? + +If you know about coding have a look at the documentation of how to add your plugin or open an [issue](https://code.event-federation.eu/Event-Federation/wordpress-activitypub-event-extensions/issues), if we can spare some free hours we might add it. + +### What if I experience problems? + +We're always interested in your feedback. Feel free to reach out to us via [E-Mail](https://event-federation.eu/contact/) or create an [issue](https://code.event-federation.eu/Event-Federation/wordpress-activitypub-event-extensions/issues). + +## Changelog + +### [0.1.0] 2024-10-01 + +* Initial alpha release on WordPress.org diff --git a/includes/activitypub/transformer/class-event.php b/includes/activitypub/transformer/class-event.php index 4dc96e1..ea992e1 100644 --- a/includes/activitypub/transformer/class-event.php +++ b/includes/activitypub/transformer/class-event.php @@ -11,8 +11,6 @@ namespace Activitypub_Event_Extensions\Activitypub\Transformer; use Activitypub\Activity\Extended_Object\Event as Event_Object; use Activitypub\Transformer\Post; -use function Activitypub\get_rest_url_by_path; - /** * Base transformer for WordPress event post types to ActivityPub events. * diff --git a/readme.txt b/readme.txt index ec2de22..4d86bca 100644 --- a/readme.txt +++ b/readme.txt @@ -1,53 +1,82 @@ === ActivityPub Event Extensions === -Contributors: menrath -Tags: events, fediverse, activitypub, activitystreams -Requires at least: 5.5 -Tested up to: 6.4 -Stable tag: 1.0.0 -Requires PHP: 7.4 +Contributors: andremenrath +Tags: events, fediverse, activitypub, activitystreams, calendar +Requires at least: 6.5 +Tested up to: 6.6 +Stable tag: 0.1.0 +Requires PHP: 8.1 License: AGPL-3.0-or-later License URI: https://www.gnu.org/licenses/agpl-3.0.html - -The ActivityPub Event Extensions +Integrating popular event plugins with the ActivityPub plugin. == Description == -With this event others can automatically aggregate and display events published on your website! -Additionally, people who do not want to miss on of your events will not have to follow a social-media account of yours that you maintain on the website of another party (and thereby you push the people to use these platforms), but could just follow your website directly. -Following like in social media, including all features you know like boosting, liking or commenting. -And the best: as you already publish events on your website, this means no extra work for you. -In the long term it actually might lead to less work and you help to provide a momentum to become independent of commercial platforms like Facebook and co. -For more details read our detailed project description. +Make your events more discoverable, expand your reach effortlessly while being independent of other (commercial) platforms, and part of the growing decentralized web. +With the ActivityPub Event Extensions Plugin for WordPress, your events can be automatically aggregated and displayed across decentralized platforms like [Mastodon](https://joinmastodon.org) or [Gancio](https://gancio.org), without any extra work. +Forget the hassle of managing multiple social media accounts just to keep your audience informed. + +This plugin is not an event managing plugin but an add-on to popular event plugins. It extends their functionality to fully support the [ActivityPub plugin](https://wordpress.org/plugins/activitypub/). +With the ActivityPub plugin people can follow your website directly and engage with your events just as they would on social media - liking, boosting and even commenting if you enable it. +You retain full ownership of your content. By integrating into your existing setup, it ensures no extra work is needed while enhancing your events' visibility across the Fediverse. + += How It Works = + +With the Event Federation Plugin for WordPress, sharing your events is effortless and automatic! +Once you create an event on your WordPress site, it is seamlessly shared across the decentralized web using the ActivityPub protocol. + +![](./.wordpress-org/event-activitypub-publishing.gif) + +Your events can be automatically delivered to platforms that fully support events, such as [Mobilizon](https://joinmobilizon.org/), [Gancio](https://gancio.org), [Friendica](https://friendi.ca), [Hubzilla](https://hubzilla.org), and [Pleroma](https://pleroma.social/). +These platforms build public event calendars utilizing multiple event sources, including your site. Updates are also handled automatically whenever you make changes — no extra work for you than managing the event on your own website. + +![](./.wordpress-org/decentralized-event-calenders.gif) + == Installation == -This plugin depends on the ActivityPub plugin. Furthermore you need to use one of the supported Event Plugins. See below. +This plugin depends on the [ActivityPub plugin](https://wordpress.org/plugins/activitypub/). Additionally, you need to use one of the supported Event Plugins. -== Supported Event Plugins == += Supported Event Plugins = * [The Events Calendar](https://de.wordpress.org/plugins/the-events-calendar/) * [VS Event List](https://de.wordpress.org/plugins/very-simple-event-list/) * [Events Manager](https://de.wordpress.org/plugins/events-manager/) -* [GatherPress](https://github.com/GatherPress/gatherpress) == Configuration == -At first be sure to spend some minutes reading the Documentation of the ActivityPub plugin](https://wordpress.org/plugins/activitypub/), in case you have not used it before. - -TODO +If you’re new to the [ActivityPub plugin](https://wordpress.org/plugins/activitypub/), it’s recommended to spend a few minutes reading through its documentation to familiarize yourself with its setup and functionality. == Frequently Asked Questions == += Do I need to install another event plugin to use the Event Federation Plugin? = + +Yes, this plugin works as an add-on and requires both the ActivityPub plugin a supported event plugin such as The Events Calendar, VS Event List, or Events Manager to manage your events. + += What platforms can follow my events? = +Your events can be followed on platforms that support ActivityPub like [Mobilizon](https://joinmobilizon.org/), [Gancio](https://gancio.org), [Friendica](https://friendi.ca), [Hubzilla](https://hubzilla.org), and [Pleroma](https://pleroma.social/). Even other applications like [Mastodon](https://joinmastodon.org), which don’t fully support events yet, will display a all important information about the events. + += How much extra work is required to maintain my events across the decentralized Web? = + +None! Once the plugin is set up, your events are automatically sent to all connected platforms or account that follow you (your Website). Any updates you make to your events are synced without additional effort. + += Can I still use social media to promote my events? = + +Yes, you can still use traditional social media if you wish. However, this plugin helps reduce reliance on commercial platforms by connecting your events to the decentralized Fediverse. + += Will this plugin work if I don't use the ActivityPub plugin? = + +No, the Event Federation Plugin depends on the [ActivityPub plugin](https://wordpress.org/plugins/activitypub/) to deliver your events across decentralized platforms, so it's essential to have it installed and configured. + = My event plugin is not supported, what can I do? = If you know about coding have a look at the documentation of how to add your plugin or open an [issue](https://code.event-federation.eu/Event-Federation/wordpress-activitypub-event-extensions/issues), if we can spare some free hours we might add it. = What if I experience problems? = -We're always interested in your feedback. Feel free to reach out to us via E-Mail or create an [issue](https://code.event-federation.eu/Event-Federation/wordpress-activitypub-event-extensions/issues). +We're always interested in your feedback. Feel free to reach out to us via [E-Mail](https://event-federation.eu/contact/) or create an [issue](https://code.event-federation.eu/Event-Federation/wordpress-activitypub-event-extensions/issues). == Changelog == -= [1.0.0] 2024-09-01 = += [0.1.0] 2024-09-01 = -* Initial release +* Initial alpha release on WordPress.org