[WordPress] 外掛分享: Post Kinds for IndieWeb in Block Themes

首頁外掛目錄 › Post Kinds for IndieWeb in Block Themes
WordPress 外掛 Post Kinds for IndieWeb in Block Themes 的封面圖片
全新外掛
安裝啟用
尚無評分
20 天前
最後更新
問題解決
WordPress 7.0+ PHP 8.2+ v1.7.1 上架:2026-07-19

內容簡介

Post Kinds for IndieWeb in Block Themes 是一款專為區塊編輯器設計的外掛,讓使用者能夠標記文章類型,如筆記、檢查、音樂和電影等,並將活動發布到自己的網站上,促進獨立網路文化。

【主要功能】
• 提供 27 種自訂區塊,包含 23 種編輯區塊
• API 驅動的搜尋功能,直接從編輯器尋找媒體
• 支援批次匯入 Last.fm、Trakt 等歷史紀錄
• 實時 scrobbling,記錄播放的歌曲或節目
• 每篇文章自動加入 microformats2 標記
• 自動生成特色圖片,從媒體文章中提取

外掛標籤

開發者團隊

⬇ 下載最新版 (v1.7.1) 或搜尋安裝

① 下載 ZIP → 後台「外掛 › 安裝外掛 › 上傳外掛」
② 後台搜尋「Post Kinds for IndieWeb in Block Themes」→ 直接安裝(推薦)
📦 歷史版本下載

原文外掛簡介

Post Kinds for IndieWeb in Block Themes is a block-editor successor to the classic Post Kinds plugin.
A post kind is a label that describes what a post is — a note, a check-in, a song you listened to, a movie you watched — rather than what it’s about. The idea comes from the IndieWeb movement: publish your activity on your own site instead of (or in addition to) social networks and tracking apps.
The original Post Kinds plugin was built for the Classic Editor. This plugin is built for the block editor and block themes.
What you get

27 custom blocks — 23 editor blocks (card blocks for most kinds, plus utilities like Star Rating, Media Lookup, Check-in Dashboard, Check-ins Feed, and Venue Detail), 3 server-rendered blocks (Now Playing, Media Stats, Recent Kinds), and the Stream Card, which is registered in PHP, hidden from the inserter, and stands in for Post Content inside the Stream query loop
API-powered search — find music, movies, books, games, and venues directly from the editor
Bulk import — pull in your history from Last.fm, Trakt, Hardcover, and more
Real-time scrobbling — webhooks for Plex, Jellyfin, Trakt, and ListenBrainz. Scrobbling means automatically logging each song or show as you play it.
microformats2 markup on every post. Microformats are standard HTML classes that let other IndieWeb sites and tools read your posts as structured data — a listen, an RSVP, a check-in — instead of plain text.
Automatic featured images — album art, posters, and book covers from your media posts become the featured image when a post has none.
A firehose feed at /firehose — your site’s RSS plus the bulk-imported posts that normal feeds leave out.
Standard.site records — when a page you bookmark publishes its metadata to AT Protocol, read the author’s own title, description, and tags instead of guessing from the page. No account or setup needed.
Standard.site publishing — add the optional ATmosphere companion plugin (2.1.0+) and your own posts publish as Standard.site documents on AT Protocol. Post Kinds adds what ATmosphere can’t know: which kinds publish by default, readable titles for untitled posts (“Listened to … by …”, “Checked in at …”), the kind as a tag, and check-in privacy rules. Everything else in Post Kinds works without it.

Post kinds

Listen — music, podcasts, and audio (MusicBrainz, ListenBrainz, Last.fm)
Watch — movies, TV shows, and videos (TMDB, Trakt, Simkl, TVMaze)
Read — books and articles (Open Library, Google Books, Hardcover)
Checkin — places and venues (Foursquare, OpenStreetMap), with per-post location privacy
Play — video games and board games (RAWG, BoardGameGeek)
Eat / Drink — food and beverages
Jam — music you love, with oEmbed previews
RSVP — event responses (yes, no, maybe, interested, remote)
Event — events with date, time, and location; the Event Card can pull details from The Events Calendar or My Calendar
Like, Reply, Repost, Bookmark — IndieWeb interactions
Favorite, Wish, Mood, Acquisition — personal tracking
Follow, Tag, Quote, Issue, Question — more IndieWeb response types
Audio, Weather, Exercise, Sleep, Trip, Itinerary, Craft — logs and experimental kinds

Along with Note, Article, Photo, Video, Review, and Recipe, that’s the full 36-kind vocabulary of the classic Post Kinds plugin. Kinds without a dedicated card block still render as cards on the Stream and carry correct microformats2 markup.
Each kind gets its own archive page (for example /kind/listen/), and the kind is set automatically from the first card block in a post — or pick it yourself in the Post Kind editor panel.
Import and sync

Bulk import from ListenBrainz, Last.fm, Trakt, Simkl, and Hardcover
Webhooks for Plex, Jellyfin, Trakt, and ListenBrainz
Background processing via WP-Cron for large imports, with duplicate prevention on re-imports
Optional syndication (POSSE) — post on your own site first, then send a copy to Last.fm, Trakt, or Foursquare. Off by default; nothing is sent unless you enable it.

Works with

Micropub — required for posting from Micropub apps. This plugin doesn’t implement the Micropub endpoint itself; install the Micropub plugin (plus IndieAuth for authentication), and this plugin classifies every incoming post as its kind — all registered kinds, not just the common ones — and converts it into the right card block or microformats paragraph. Clients that know their kind can name it outright with a pkiw-kind property; Outpost does.
IndieBlocks — detected and recommended, not required. It provides companion blocks (Facepile, Location, Syndication, Link Preview); this plugin doesn’t implement those features itself.
Webmention — detected on the Integrations settings tab. Cross-site conversations come from that plugin, not this one.
Syndication Links, Post Formats for Block Themes, Bookmark Card — detected and enhanced when present.
ATmosphere — optional companion (2.1.0+) for Standard.site publishing on AT Protocol. ATmosphere owns the connection and the records; this plugin decides which kinds publish, derives readable titles for untitled posts, and applies check-in privacy rules. Everything else works without it.
Link Extension for XFN — detected on the Integrations settings tab. Adds XFN relationship options to the block editor’s link popover, so a reply or mention can say how you know the person.
The Events Calendar and My Calendar — either one feeds the Event card. Event name, start, end, location, and URL are read from whichever is installed; with neither, the card falls back to its own fields.
WP Recipe Maker — a post containing a WPRM recipe is detected, and the recipe kind is suggested for it.
ActivityPub — a recommendation only; this plugin contains no ActivityPub integration.
RSS Chat — a recommendation only; this plugin contains no rss.chat integration, and RSS Chat is on GitHub rather than WordPress.org. It syndicates posts carrying the core chat post format, which is separate from kinds, so a note or a reply is not sent to rss.chat unless you also set that format on it. Whether that check could become filterable, so a kind could decide instead, is open upstream: issue #6.

Conflicts

Post Kinds (indieweb-post-kinds) — hard conflict. Both plugins register the same kind taxonomy, so this plugin refuses to run while the classic Post Kinds plugin is active and shows an admin notice instead. Deactivate one of them.

External services
This plugin integrates with external services for media metadata lookups, history imports, scrobbling, and syndication. Every connection is optional: nothing is contacted until you enable a service, save its credentials, use its lookup, or paste one of its links. What follows lists each service, what is sent and when, and its terms and privacy policy.
Media lookup services (used when you search from the editor, Quick Post, or the Media Lookup block)
Each lookup sends your search text (a title, artist, venue name, or similar) plus your stored API key or credentials for that service, only at the moment you run a search or refresh metadata.

MusicBrainz — music metadata (albums, artists, recordings). Also sends the app name/contact you configure, per their API etiquette. Terms, Privacy.
TMDB (The Movie Database) — movie and TV metadata and artwork. Terms, Privacy. This product uses the TMDB API but is not endorsed or certified by TMDB.
TVMaze — TV show metadata. Terms, Privacy.
Google Books — book metadata. Terms, Privacy.
Open Library (Internet Archive) — book metadata and covers. Terms and privacy.
Hardcover — book metadata and reading data. Terms, Privacy.
Podcast Index — podcast and episode metadata. Terms, Privacy.
RAWG — video game metadata. Terms, Privacy.
BoardGameGeek — board game metadata. Terms, Privacy.
Foursquare — venue search for check-ins (sends your search text and, when you allow it, coordinates to find nearby venues). Terms, Privacy.

Connected accounts (used for history imports, scheduled sync, scrobbling, and syndication)
When you connect an account, the plugin stores your token and, on import, scheduled sync, or when you publish a post with that service’s syndication toggle on, sends the data needed for that action (your listen/watch/check-in details, plus your token).

Last.fm — listening history import and scrobbling your listen posts. Terms, Privacy.
ListenBrainz — listening history import and scrobble submission. Terms, Privacy.
Trakt — watch history import, sync, and check-ins. Terms, Privacy.
Simkl — watch history import and sync. Terms, Privacy.
Untappd — drink check-in import. Terms, Privacy.
Foursquare/Swarm — check-in import via OAuth. Terms, Privacy.
Readwise — reading highlights import. Terms, Privacy.

Geocoding and maps

Nominatim (OpenStreetMap Foundation) — converts a check-in’s coordinates or place text into an address (and back). Sends the location you’re checking in to and the contact email you configure, only when you create or edit a check-in that needs geocoding. Usage policy, Privacy.
OpenStreetMap embeds — when a published check-in shows a map, the visitor’s browser loads an embedded map from openstreetmap.org containing that check-in’s coordinates. Site visitors’ browsers connect to OpenStreetMap when viewing those posts. Terms, Privacy.

Link identification

Letterboxd — when you paste a Letterboxd link into a watch post, the plugin fetches that page once to identify the film. Only the URL you pasted is requested. Terms, Privacy.

Standard.site records on AT Protocol (used when you check a cited URL)
When you choose “Check this URL” on a bookmark, like, reply, repost, favorite, jam, or wish card, or a few seconds after you publish a post containing one, the plugin looks for a standard.site record published by the page you cited. Nothing about you or your site is sent, and no account or credential is involved: these are public, unauthenticated reads.

The cited page — requested once to read its site.standard.document tag. Only the URL you already linked to is requested, the same as the Letterboxd fetch above. Terms and privacy are whatever that site publishes.
plc.directory — receives the identifier found in that tag and returns the address of the server holding the record. Operated by Bluesky Social PBC. Not contacted for did:web identifiers, which name their own host. Terms, Privacy.
The author’s Personal Data Server — receives the record’s identifier and returns the record. This host is not a fixed service: it is whichever server the author of the page you cited uses, so which hosts are contacted depends on which pages you bookmark. Terms and privacy are whatever that server’s operator publishes.

Results are cached for a day, including pages that publish no record, so a page is not re-fetched every time you save. The plugin only reads. It never publishes your posts to AT Protocol.
Book previews

Amazon Kindle previews — when you paste an Amazon or Kindle book link into a read post (or a bulk import creates one), the post can embed that book’s preview from read.amazon.com. The preview frame is loaded by the editor’s and site visitors’ browsers directly from Amazon, with only the book’s ID in the URL; the plugin itself sends nothing to Amazon. Conditions of Use, Privacy Notice.

Inbound webhooks (no data sent)
Plex, Jellyfin, Trakt, ListenBrainz, and OwnTracks scrobbling works through webhooks: those services send data to your site at the secret URL you configure. The plugin makes no outbound request to them for this feature.
AI features
The optional AI enhancements use the WordPress AI Client bundled with WordPress 7.0+, which routes requests to whatever AI provider the site administrator has configured in WordPress itself. This plugin does not contact any AI service directly and sends nothing unless you invoke an AI action.
Privacy Policy
This plugin:

Stores all post data locally in your WordPress database — no custom tables
Makes API calls to external services only when you search for media, paste a media URL, run imports, or receive a webhook
Does not track users or send analytics
Stores API keys and OAuth tokens in the WordPress options table; they are removed when you uninstall the plugin
Sends your activity to Last.fm, Trakt, or Foursquare only when you enable those syndication toggles

External services contacted (when you use the matching feature):

MusicBrainz / ListenBrainz — music metadata (no API key required)
Last.fm — music metadata and scrobbling history
TMDB — movie and TV show metadata
Trakt / Simkl / TVMaze — movie and TV tracking
Open Library / Google Books / Hardcover — book metadata
RAWG / BoardGameGeek — game metadata
Podcast Index — podcast metadata
Foursquare — venue information
OpenStreetMap / Nominatim — geocoding and map data
Letterboxd — fetched when you paste a Letterboxd URL into a Watch Card, to find the matching movie
Amazon (read.amazon.com) — Kindle book previews embedded in read posts load in the browser directly from Amazon

Each external service has its own privacy policy. API calls retrieve public metadata for the items you look up.
Credits

Author: Courtney Robertson
Original plugin: Post Kinds
Built for the IndieWeb community
Uses open data from MusicBrainz, TMDB, Open Library, RAWG, OpenStreetMap, and other services

延伸相關外掛

文章
Filter
Mastodon