Skip to content

v2.3.0 — Markdown / HTML, vCard contact cards & repo polish

Choose a tag to compare

@toineenzo toineenzo released this 25 Apr 23:53

A fairly chunky minor release. The settings page now speaks Markdown and HTML in every text field, the About-me block can attach a downloadable vCard for Personal and Business contacts, and the GitHub repo is freshly polished with a proper README, description and topics.

No data migration needed — drop in the new build (or git pull) and reload the admin.

✨ New

Markdown + HTML across every text field

Bundled Parsedown 1.7.4 (single-file, MIT) so you can drop **bold**, [link](url), lists, code spans, headings or raw HTML into:

  • Site title and tagline
  • Link titles and descriptions
  • Category titles and descriptions
  • About-me text
  • Image grid overlay titles

Two helpers — lfp_render_inline() for one-line surfaces, lfp_render_text() for multi-line — keep block elements out of inline contexts. The browser tab <title> and og:* meta tags strip back to plain text via strip_tags() so a <strong> doesn't leak into the tab.

The Custom footer HTML field already accepted raw HTML — that hasn't changed.

Contact cards & vCard download

The About-me block in the General tab gains a card with two inner tabs:

  • Personal — name, phone, email, website, address.
  • Business — same shape; the name doubles as the company in the generated vCard.

Each tab has an "Enable" toggle. When enabled, the public landing page shows a pill "Save personal contact" / "Save business contact" button. Clicking it hits a new endpoint, /contact.vcf?type=personal|business, which serves a vCard 3.0 file with proper RFC-6350 escaping and a Content-Disposition filename.

The phone / email / website fields can also be wired up as social-button platforms via the matching icons (Phone, Email, Website) added back in v1.1.

Footer link to GitHub

The plugin-page footer's Link Front Page vX.Y.Z label now links to https://github.com/toineenzo/YOURLS-Link-Front-Page in a new tab.

🐛 Fixes

  • Image-tile dialog wasn't toggling URL / keyword fields after the v2.2.1 rename. el.dataset.lfpIgBlock was missed by the bulk replace because dataset keys don't include the dashes. Now reads el.dataset.lfpImgridBlock.

📚 Repo polish

  • README rewritten with badges, demo link, full feature breakdown, file structure, storage shape and bundled-license attribution.
  • Repository description bumped to "Linktree-style homepage for YOURLS — link list, image grid, social buttons, contact cards, full design controls. PHP 8.4 compatible, no external runtime dependencies."
  • Homepage set to https://toine.click.
  • Topics: yourls, yourls-plugin, linktree, linktree-alternative, link-in-bio, url-shortener, self-hosted, php, php8, bio-link, vcard.

⬇️ Installation

cd /path/to/yourls/user/plugins
rm -rf yourls-link-front-page
unzip /path/to/YOURLS-Link-Front-Page-2.3.0.zip

…or git pull if you cloned the repo. No database changes.

Full changelog: v2.2.1…v2.3.0