Files

146 lines
7.3 KiB
Plaintext
Executable File

=== Beep ===
Contributors: sami
Tags: microblog, twitter, tweets, social, comments, polls, elementor
Requires at least: 6.0
Tested up to: 6.9
Requires PHP: 7.4
Stable tag: 1.9.4
License: GPLv2 or later
A Twitter-style microblog for WordPress. Posts, likes, replies, polls, quotes, GIFs, and Gravatars. Use [beep_feed] shortcode or Elementor widget.
== Description ==
Beep adds a Twitter-style microblog to your WordPress site. Drop the
[beep_feed] shortcode on any page or use the Elementor widget. Likes,
threaded replies, polls, quotes, GIFs, and Latest/Top sort tabs are all built in.
Features:
* Twitter-style feed with [beep_feed] shortcode
* Elementor drag-and-drop widget
* Polls (create and vote)
* Quote posts
* GIF picker (Giphy integration)
* Likes on beeps and replies
* Nested threaded replies
* Gravatar avatars
* Admin settings page (Settings > Beep)
* Customizable colors and branding via CSS variables
* Bird-themed branding with custom icons
== Installation ==
1. Upload beep.zip via Plugins -> Add New -> Upload Plugin. Activate.
2. Add [beep_feed] to a page, or use the Elementor widget.
3. For multi-user signup, enable "Anyone can register" in Settings -> General.
== Shortcode ==
[beep_feed limit="50" header="Messages from" sort="latest" theme="auto" show_wordmark="yes"]
* limit - beeps loaded on first render (default 50)
* header - text next to the wordmark (default "Messages from"; "" hides it)
* sort - latest (default) or top
* theme - auto (default, follows visitor's system preference), dark, or light
* show_wordmark - yes (default) or no
== Changelog ==
= 1.9.4 =
* Moved the bird badge from the top-right of beeps to a small emblem at the bottom-left, opposite the Beep! wordmark.
= 1.9.3 =
* New header emblem: the Beep bird now marks the feed header where the X mark sits on X.
= 1.9.2 =
* YouTube links no longer display as raw hyperlinks above the video card - the card replaces the URL text (posts, replies, and quoted beeps).
= 1.9.1 =
* YouTube links in beeps, replies, and quoted beeps automatically render as a video card (thumbnail + play button; click to play inline). Supports youtube.com/watch, youtu.be, shorts, embed, and live URLs.
= 1.9.0 =
* Reply composer now supports full media: images (up to 4), GIFs, voice notes, quotes, and polls. The reply form has the same toolbar as the top-level composer.
* Replies can be posted with media only — no text required (server gate mirrors the v1.8.1 post rule).
* Reply polls live in a new {prefix}beep_reply_polls table; reply images/voice/GIF/quote-id live in comment meta (parallel to post meta).
* Refactored the top-level composer into shared helpers (beep_render_media_previews, beep_render_quote_section, beep_render_poll_section, beep_render_compose_toolbar) used by both compose and reply forms.
* New REST routes: POST /reply/{id}/media, DELETE /reply/{id}/media/{attachment_id}, POST /reply/{id}/voice, POST /reply/{id}/gif, POST /reply/{id}/quote, POST /reply/{id}/poll.
* Beep_Media got parent-agnostic wrappers (handle_upload_for_parent, handle_voice_upload_for_parent, remove_image_from_parent) — upload pipeline now reused for posts and comments.
= 1.8.1 =
* Image-only / media-only posts: you can now post images, GIFs, voice notes, quotes, or polls without typing any words. The Beep button enables automatically when any attachment is present (server-side too — empty content + no attachments still returns empty_content).
* The composer button refreshes whenever media is added or removed (images, voice, GIF, quote, poll).
= 1.8.0 =
* Twitter-style feed: the timeline now shows only top-level beeps; clicking a beep (or its reply count) opens the full conversation in a modal with working reply forms, likes, and nested threads.
* Light theme + auto mode: theme="auto|dark|light" shortcode attribute; auto follows the visitor's system preference.
* Fixed composer avatar (was referencing an undefined post and could render broken); replies now show the author's real Gravatar/custom avatar instead of the placeholder bird.
* Fixed the conversation and GIF modals never receiving clicks (close button was outside the event scope); added Escape-key and backdrop-click to close.
* Fixed CSS scoping: container styles (600px column, background, borders) never actually applied due to inverted .beep-embed/.beep-feed nesting.
* Fixed Elementor widget registration (undefined variable fatal, wrong class namespace, nonexistent render method). Beep continues to work fine without Elementor.
* Removed bundled Giphy API key; configure your own in Settings -> Beep.
* Quote button moved into the action bar with proper repost-green hover; like icon now correctly swaps outline/filled.
* Header respects the header/show_wordmark shortcode attributes (was hardcoded).
* Restyled to match Twitter: action-bar hover halos, poll results with leading-bar style, GIF badge overlay, media grid, empty state, toasts, spinner, composer toolbar.
* Reply authors can delete their own replies; Enter searches in the GIF picker; new post/reply respects the active sort tab.
= 1.7.4 =
* Feed-header wordmark now loads from the plugin's own URL (was hardcoded to sami-ahmed.net) with a version-based cache-buster, so the clean logo shows immediately instead of a stale/corrupted cached image.
* Made the header wordmark a bit larger (30px).
= 1.7.3 =
* Replaced the corrupted beep-wordmark.png assets with a clean, transparent render of the 3D "Beep!" logo (fixes the feed-header wordmark image).
* Gave the inline-SVG wordmark extra descender room so the "p" never clips.
= 1.7.2 =
* Beep wordmark on every beep + reply is now the 3D extruded brand logo (blue-violet face, navy outline, blue depth) instead of flat text, drawn as a sharp ~1KB inline SVG.
* Bumped the wordmark size and opacity so the logo reads clearly on the dark theme.
= 1.7.1 =
* Beep wordmark now shown bottom-right of every beep AND reply, with the delete button furthest right.
* Wordmark rendered as crisp inline SVG (readable on the dark theme); removed a duplicate wordmark.
* Restored self-hosted plugin updates via the Gitea releases API (update badge + one-click update).
= 1.7.0 =
* Shortcode-only rendering ([beep_feed] where you place it); removed auto-inject.
* Public compose form (posting still requires login).
= 1.6.0 =
* Elementor drag-and-drop widget for feed placement.
* Admin settings page (Settings > Beep) for Giphy API key and branding.
* Polls: create polls in beeps, vote on polls.
* Quote posts: quote any beep.
* GIF picker powered by Giphy.
* Bird-themed redesign with custom bird icons and badges.
* CSS variables for customizable colors.
* Elementor widget registration.
* Settings stored in wp_options.
= 1.5.1 =
* Twitter-style UI redesign with bird assets.
* Beep bird badge on posts and replies.
* CSS scope isolation improvements.
= 1.5.0 =
* Polls feature (Beep_Polls class, voting UI).
* Bird wordmark logo in header.
= 1.4.0 =
* Like replies, not just beeps.
* Nested replies (reply to replies, indented up to two levels).
* Latest / Top sort tabs at the top of the feed.
* Bird badge in the top-right of every beep and reply.
* Polished tabs, focus states, action button styling.
= 1.3.0 =
* Feed header reads "Messages from" + Beep wordmark.
* Avatar/textarea fixes baked in.
= 1.2.0 =
* Feed header shows Beep wordmark instead of small icon + Home text.
= 1.1.0 =
* New hand-drawn bird logo.
= 1.0.0 =
* Initial release.