PHPackages                             prismaticbytes/prismatic-links - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. prismaticbytes/prismatic-links

ActiveCraft-plugin[Utility &amp; Helpers](/categories/utility)

prismaticbytes/prismatic-links
==============================

Link previews field

1.1.2(5y ago)0151[1 issues](https://github.com/prismaticbytes/prismatic-links/issues)MITPHP

Since Mar 28Pushed 5y ago1 watchersCompare

[ Source](https://github.com/prismaticbytes/prismatic-links)[ Packagist](https://packagist.org/packages/prismaticbytes/prismatic-links)[ RSS](/packages/prismaticbytes-prismatic-links/feed)WikiDiscussions main Synced today

READMEChangelogDependencies (5)Versions (5)Used By (0)

[![Screenshot](resources/img/plugin-logo.png)](resources/img/plugin-logo.png)

Prismatic Links for Craft CMS
=============================

[](#prismatic-links-for-craft-cms)

Prismatic Links brings app-like link previews to your entries.

[![Screenshot](resources/img/screenshot-2.png)](resources/img/screenshot-2.png)

Requirements
------------

[](#requirements)

This plugin requires Craft CMS 3.0.0 or later.

Installation
------------

[](#installation)

You can install this plugin from the Plugin Store or with Composer.

**Note: The license fee for this plugin is $15.00 via the Craft Plugin Store. Supporting this plugin funds future development.**

#### From the Plugin Store

[](#from-the-plugin-store)

Go to the Plugin Store in your project’s Control Panel and search for “Prismatic Links”. Then click on the “Install” button in its modal window.

#### With Composer

[](#with-composer)

Open your terminal and run the following commands:

```
# go to the project directory
cd /path/to/my-project

# tell Composer to load the plugin
composer require prismaticbytes/prismatic-links

# tell Craft to install the plugin
./craft install/plugin prismatic-links
```

Usage
-----

[](#usage)

### CMS field

[](#cms-field)

Create your field as you would any other field.

Usage:

- Insert a link and the preview will load automatically
- The image selector allows you to cycle between all images found on the destination URL
- The refresh button will re-fetch the page

[![Screenshot](resources/img/screenshot-2.png)](resources/img/screenshot-2.png)

### Templates

[](#templates)

Use our template or bring your own

```
{% for block in entry.externalLinks %}
    {% if block.externalLink.valid %}
        {% include 'prismatic-links/prismatic-link-template.twig' with block.externalLink %}
    {% endif %}
{% endfor %}
```

```
{% if myField.valid %}

                {{ myField.title ?? "" }}

                {{ myField.description ?? "" }}

                {{ myField.domain ?? "" }}

{% endif %}
```

#### Available variables

[](#available-variables)

```
myField.valid         # the URL was fetched successfully
myField.url           # the URL
myField.image_cached  # the locally cached version of the image
myField.image         # the original image URL
myField.images        # an array of available images from the original URL
myField.title         # the og: or meta title
myField.description   # the og: or meta description
myField.domain        # the domain
```

### CSS

[](#css)

Use our CSS or bring your own

```
{% do view.registerAssetBundle("prismaticbytes\\prismaticlinks\\assetbundles\\prismaticlinks\\PrismaticLinksAsset") %}
```

➡️ [PrismaticLinksField.css](https://github.com/prismaticbytes/prismatic-links/blob/main/src/assetbundles/prismaticlinks/dist/css/PrismaticLinksField.css)

### Cache

[](#cache)

Images are cached indefinitely to avoid missing images if the destination page removes the image from their servers.

The images are stored in Craft's `storage` path as `storage/prismaticlinks`.

Be sure to take this into account in your deployment strategy if you want to ensure these files are not deleted.

### Runtime template method

[](#runtime-template-method)

This method will fetch the data and render the template HTML at runtime.

⚠️ Do not use this method in your main templates eg. home page. Execution of remote calls to external sites will cause slow page loads and potentially hang or cause timeouts on your site.

✅ Create a template fragment to be loaded via AJAX eg. `entries/url-preview/{entry_id}` and use javascript to load the template async eg. `$.load("entries/url-preview/12345")`

```
{{ craft.prismaticLinks.fetch(url, template, cacheDuration)|raw }}

url            # the URL to fetch
template       # the template to render
cacheDuration  # the duration of the cache in seconds
                 null: the cache default will be used
                 0: infinity
                 -1: disabled
```

```
{{ craft.prismaticLinks.fetch('https://www.github.com')|raw }}
{{ craft.prismaticLinks.fetch('https://www.nytimes.com', 'test-template')|raw }}
{{ craft.prismaticLinks.fetch('https://www.nytimes.com', 'test-template', 0)|raw }}
```

---

Brought to you by [Prismatic Bytes](https://prismaticbytes.com)

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity55

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~5 days

Total

4

Last Release

1853d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/82c5de45afd4f3157345b31b87f2953732fd094c7a002f2e968285724d35809c?d=identicon)[stephenfrank](/maintainers/stephenfrank)

---

Top Contributors

[![stephenfrank](https://avatars.githubusercontent.com/u/112059?v=4)](https://github.com/stephenfrank "stephenfrank (9 commits)")

---

Tags

craft3craftcmscmsCraftcraftcmscraft-pluginprismatic links

###  Code Quality

TestsCodeception

### Embed Badge

![Health badge](/badges/prismaticbytes-prismatic-links/health.svg)

```
[![Health](https://phpackages.com/badges/prismaticbytes-prismatic-links/health.svg)](https://phpackages.com/packages/prismaticbytes-prismatic-links)
```

###  Alternatives

[verbb/navigation

Create navigation menus for your site.

90683.7k17](/packages/verbb-navigation)[verbb/formie

The most user-friendly forms plugin for Craft.

101372.9k40](/packages/verbb-formie)[verbb/comments

Add comments to your site.

13753.1k](/packages/verbb-comments)[verbb/tablemaker

Create customizable and user-defined table fields.

40168.8k1](/packages/verbb-tablemaker)[supercool/tablemaker

Create customizable and user-defined table fields.

40141.7k](/packages/supercool-tablemaker)[pennebaker/craft-architect

CraftCMS plugin to generate content models from JSON/YAML data.

72148.5k5](/packages/pennebaker-craft-architect)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
