piedweb/linksimprover

Increase your search rankings by improve your internal linking.

v0.0.8 2021-01-20 15:24 UTC

This package is auto-updated.

Last update: 2024-11-21 00:23:30 UTC


README

PHP Packages Open Source

Links Improver

Improve the navigability of a website by improving your internal linking ... so Increase your search rankings (SEO).

Latest Version on Packagist GitHub Tests Action Status Total Downloads

You are not a developper and want a ready product like a wordpress plugin, see Link Whisper (af link).

Description

From a list (raw or file) with this format :

url,kws[separate by , and can use wildcard (*)],force (default 0),counter

(force and counter are facultatives)

The code analyse a content to extrat existing links and word count.

Then, from our list, it adds links to text from one kws suggested if :

  • the kw is in the text (for sure) (en vérifiant que le précédent tag est un <p.*>),
  • the link does not exist yet
  • the number of link is not exceeded a number (eg: 10 links in the content) or a ratio (eg: 1 link for 50 words)

Then update link counter

If you edit a second content, I advice you to reOrder the link list to permit link rotation (the just created links will go at the end of the list respecting their force value if it's set).

Support this package

By speaking about and link piedweb.com on your website.

Usage

Installation

composer require piedweb/linksimprover

Example

include 'vendor/autoload.php';

use Piedweb\LinksImprover\LinksManager;
use Piedweb\LinksImprover\LinksImprover;

$content = '<p>My blog post content where I want to add few links to other page to get better pos on google.</p>';

$base = 'https://piedweb.com'; // my blog

// Get your page you want increment the list and on wich kw
$linksList = 'url,kws,force,counter
https://piedweb.com/,"Pied Web,Robin from Pied Web"
https://google.com/,"Google,google.com"';

$linksManager = LinksManager::load($linksList, $base);

$linksImprover = new LinksImprover($content);

$newContent = $linksImprover->improve($linksManager, 1 / 20, 'style=color:black'); // 1 link every 20 words max, it's huge :)

echo $newContent;

// Then reorder link list before submit a new content

$linksManager->reOrder();

Will return

<p>
    My blog post content where I want to add few links to other page to get
    better pos on <a href="https://google.com" style="color:black">google</a>.
</p>

Other method

// Go further
/**
 * @param array
 */
$linksImprover->setTagsInsideLinkCouldBeAdded(LinksImprover::TAGS_EXTENDED);
// Per default, the links could be added in p, strong, b, em, i and span.
// Extenged tags add div and h[2-6]
// You can suggest an array

// Reporting
$linksImprover->getAddedLinksCount();
$linksImprover->getAddedLinks();
$linksImprover->getExistingLinks();

class:LinksImproverBBCode // Same api and search and replace for [url=*][/url]

Warning (and benefit)

It don't compare link with or without host. So you can use it to link external website...

but be careful to ManageLinks with host and having a proper content (link without host).

Testing

composer test

Credits

License

The MIT License (MIT). Please see License File for more information.