yellow-mastodonapi/readme.md
2026-01-07 15:03:37 +01:00

52 lines
No EOL
3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<p align="right"><a href="https://codeberg.org/simonpipe/yellow-mastodonapi/src/branch/main/readme-de.md">Deutsch</a> &nbsp; <a href="https://codeberg.org/simonpipe/yellow-mastodonapi/src/branch/main/readme.md">English</a></p>
# MastodonAPI
A plugin to import your public Toots via the Mastodon API into your Yellow Blog. The plugin works with Mastodon and with GoToSocial.
## Installation
1. Download the ZIP file
2. Copy it into the `/system/extensions` directory
3. Reload your website the plugin is now installed
## How it works
The plugin works fully automatically. It regularly checks in the background if there are new posts.
When you visit the site, it queries your Mastodon API and automatically creates blog posts from your Toots. Optionally, you can specify a #Hashtag to import only certain posts.
There are three ways to trigger the import:
1. **Automatic (Lazy Cron):** As soon as a visitor accesses your website, the plugin checks if the update interval has expired and loads new Toots if necessary.
2. **From the terminal:** You can manually start the import on the server with: `php yellow.php mastodonapi`
3. **From the system cronjob:** If your host supports cronjobs, you can have the command `php yellow.php mastodonapi` run regularly (e.g. every 30 minutes).
## Settings
All settings are in `system/extensions/yellow-system.ini`:
`MastodonapiInstanceUrl` = your Mastodon instance URL (e.g. https://mastodon.social)
`MastodonapiAccountId` = your Mastodon user ID (numeric, e.g. 1234567890)
> *Find the ID of a Mastodon account: Enter "https://YOUR_INSTANCE_URL/api/v1/accounts/lookup?acct=PROFILNAME" in your browser.*
> *Find the ID of a GoToSocial account <a href="https://codeberg.org/simonpipe/yellow-mastodonapi/src/branch/main/help-gotoso-en.md">(see here)</a>*
`MastodonapiAccessToken` = optional for a Mastodon account, mandatory for a GoToSocial account <a href="https://codeberg.org/simonpipe/yellow-mastodonapi/src/branch/main/help-gotoso-en.md">(see here)</a>
`MastodonapiUpdateInterval` = time interval between automatic updates in minutes (default: 30).
`MastodonapiLimit` = number of Toots retrieved per run (default: 20).
`MastodonapiHashtag` = leave blank for all posts; or filter with #hashtag.
`MastodonapiAuthor` = name under which the blog posts should appear.
`MastodonapiTag` = tag for the blog posts (default: Fediverse).
`MastodonapiFolder` = path to the blog folder (default: content/2-blog/).
`MastodonapiMaxAge` = age of Toots in hours that should still be imported. 0 = all available Toots.
`MastodonapiStatus` = page status, default value is public, <a href="https://codeberg.org/simonpipe/yellow-mastodonapi/src/branch/main/readme.md">supported status values</a>
The following status values are supported:
`public` = page is a normal page
`draft` = page is not visible, user needs to log in, requires <a target="blank_" href="https://github.com/annaesvensson/yellow-draft">draft extension</a>
`unlisted` = page is not visible, but can be accessed with the correct link
## Developer
Simon