50 lines
No EOL
2.9 KiB
Markdown
50 lines
No EOL
2.9 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/).
|
||
- **MastodonapiStatus** = Default value is public
|
||
- 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
|
||
- **MastodonapiMaxAge** = Age of Toots in hours that should still be imported. 0 = all available Toots.
|
||
|
||
## Developer
|
||
|
||
Simon |