52 lines
No EOL
3 KiB
Markdown
52 lines
No EOL
3 KiB
Markdown
<p align="right"><a href="https://codeberg.org/simonpipe/yellow-mastodonapi/src/branch/main/readme-de.md">Deutsch</a> <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 |