PHPackages                             kaqazstudio/laravel-interlink - 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. kaqazstudio/laravel-interlink

ActiveLibrary

kaqazstudio/laravel-interlink
=============================

Add interlink to your published contents.

v0.1.0(4y ago)281MITPHPPHP &gt;=7.2

Since Nov 27Pushed 4y ago1 watchersCompare

[ Source](https://github.com/KaqazStudio/laravel-interlink)[ Packagist](https://packagist.org/packages/kaqazstudio/laravel-interlink)[ Docs](https://github.com/kaqazstudio/laravel-interlink)[ RSS](/packages/kaqazstudio-laravel-interlink/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (2)Versions (2)Used By (0)

[![Quality Score](https://camo.githubusercontent.com/9da7b16dbbeb394b11e324292dd8fd1a56e8d405b31bfdb6635769b61df1e138/68747470733a2f2f696d672e736869656c64732e696f2f7363727574696e697a65722f672f6b6171617a73747564696f2f6c61726176656c2d696e7465726c696e6b2e7376673f7374796c653d666c61742d737175617265)](https://scrutinizer-ci.com/g/kaqazstudio/laravel-interlink)[![Total Downloads](https://camo.githubusercontent.com/321e07108f4b72bdcd7ee18f74c21593dc1e98aab389dbbee4a261796921fc6d/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6b6171617a73747564696f2f6c61726176656c2d696e7465726c696e6b2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/kaqazstudio/laravel-interlink)

**WORK IN PROGRESS, some functionalities may be changed in the future.**

Add internal link to your published assets.

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

[](#installation)

You can install the package via composer:

```
composer require kaqazstudio/laravel-interlink
```

Manual Registration
-------------------

[](#manual-registration)

If autodiscovery doesn't work, register the package in your project **manually**.

■ Add this line to `config/app.php > providers array`

```
KaqazStudio\LaravelInterlink\ServiceProvider\LaravelInterlinkServiceProvider::class
```

■ Then add the line below to `config/app.php > aliases array`

```
'LaravelInterlink' => KaqazStudio\LaravelInterlink\Facade\LaravelInterlinkFacade::class
```

Use with Facade
---------------

[](#use-with-facade)

Initialize Interlink

```
LaravelInterlink::single();
```

Use without Facade
------------------

[](#use-without-facade)

Initialize Interlink without facade

```
LaravelInterlink::access();
```

Laravel Interlink are available on chains! :)

### Methods

[](#methods)

MethodRequiredTypeDefaultDescription`init`truechainFire the engine`setKeyword`truestringnullSet target keyword`setTitle`falsestring*`keyword`*Replace with the keyword`setLink`truestringnullSet internal link url`rawLink`falseboolfalseSet link url to raw format`setCount`falseintinfiniteCount of link replacement`setPosts`truearraynullSet posts collection`column`truestringnullSet content column`markdown`falseboolfalseMarkDown format for links`blank`falseboolfalseSet links target to `_blank``noFollow`falseboolfalseSet links rel to `nofollow``setCustomAttributes`falsestringnullSet custom html attributes for a tag`process`truechainProcess link internalization`getUpdatedPosts`falsechainGet updated posts as a collection`updatePosts`falsechainDo `update` method on all posts

Example
-------

[](#example)

For example, you want to refer all first **AirPods** words to **/apple-airpods** in all of your published Blog posts.

```
LaravelInterlink::single()
                ->init()                     // Warm engine
                ->setKeyword('AirPods')      // Target Keyword
                ->setLink('/apple-airpods')  // Target url
                ->setCount(1)                // For first word
                ->setPosts(BlogPost::all())  // Get all blog posts
                ->setColumn('body')          // Set `body` column for content target
                ->process()                  // Process internalization
                ->updatePosts();             // Run update on posts!
```

Also, you can get all updated contents as a collection!

So, you MOST use `getUpdatedPosts()` **INSTEAD OF** `updatePosts()`

### Use customized links

[](#use-customized-links)

When you need to use your own format for link you can easily do like this

```
LaravelInterlink::single()
                ...
                ->setLink('Custom-Link')  // Your custom format
                ->rawLink()                                     // Raw link format [+]
                ...
```

Or, Maybe you to add custom html attributes to default link format - "Default a tag"

```
LaravelInterlink::single()
                ...
                ->setCustomAttributes('custom-data="Hello"')  // Raw link format [+]
                ...
```

### Changelog

[](#changelog)

Please see [CHANGELOG](CHANGELOG.md) for more information on what has changed recently.

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](CONTRIBUTING.md) for details.

### Security

[](#security)

If you discover any security related issues, please email `dev@kaqaz.studio` instead of using the issue tracker.

Credits
-------

[](#credits)

- [Armin Hooshmand](https://github.com/realmrhex) ([personal site](https://hex.kaqaz.studio))
- [Kaqaz Studio Corp](https://kaqaz.studio)
- [All Contributors](../../contributors)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

19

—

LowBetter than 10% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity35

Early-stage or recently created project

 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

Unknown

Total

1

Last Release

1626d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/ec459f6a51077f7a7b06c4ea96a2f9c82934b5f4138618dcd144adec50a8b092?d=identicon)[KaqazStudio](/maintainers/KaqazStudio)

---

Top Contributors

[![KaqazStudio](https://avatars.githubusercontent.com/u/92265265?v=4)](https://github.com/KaqazStudio "KaqazStudio (2 commits)")

---

Tags

internal-linkslaravelphplaravelmrhexlaravel-interlinkkaqaz-studio

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/kaqazstudio-laravel-interlink/health.svg)

```
[![Health](https://phpackages.com/badges/kaqazstudio-laravel-interlink/health.svg)](https://phpackages.com/packages/kaqazstudio-laravel-interlink)
```

###  Alternatives

[slowlyo/owl-admin

基于 laravel、amis 开发的后台框架~

61214.2k26](/packages/slowlyo-owl-admin)[erag/laravel-disposable-email

A Laravel package to detect and block disposable email addresses.

226102.4k](/packages/erag-laravel-disposable-email)[highsolutions/eloquent-sequence

A Laravel package for easy creation and management sequence support for Eloquent models with elastic configuration.

121130.3k](/packages/highsolutions-eloquent-sequence)[glhd/linen

21135.6k](/packages/glhd-linen)[api-platform/laravel

API Platform support for Laravel

59126.4k6](/packages/api-platform-laravel)[interaction-design-foundation/laravel-geoip

Support for multiple Geographical Location services.

17221.0k3](/packages/interaction-design-foundation-laravel-geoip)

PHPackages © 2026

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