https://github.com/piedweb/linksimprover
Improve the navigability of a website by improving your internal linking ... so Increase your search rankings
https://github.com/piedweb/linksimprover
Last synced: about 2 months ago
JSON representation
Improve the navigability of a website by improving your internal linking ... so Increase your search rankings
- Host: GitHub
- URL: https://github.com/piedweb/linksimprover
- Owner: PiedWeb
- License: mit
- Created: 2020-11-28T10:04:23.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2021-01-20T15:36:16.000Z (over 5 years ago)
- Last Synced: 2025-02-08T10:17:51.561Z (over 1 year ago)
- Language: PHP
- Homepage: https://dev.piedweb.com
- Size: 58.6 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE.md
- Security: .github/SECURITY.md
Awesome Lists containing this project
README
# Links Improver
**Improve the navigability of a website** by improving your internal linking
... so **Increase your search rankings** (SEO).
[](https://packagist.org/packages/piedweb/LinksImprover)
[](https://github.com/PiedWeb/LinksImprover/actions)
[](https://packagist.org/packages/piedweb/LinksImprover)
**You are not a developper and want a ready product like a wordpress plugin, see [Link Whisper](https://linkwhisper.com/ref/644/) (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 ),
- 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
```bash
composer require piedweb/linksimprover
```
### Example
```php
include 'vendor/autoload.php';
use Piedweb\LinksImprover\LinksManager;
use Piedweb\LinksImprover\LinksImprover;
$content = '
My blog post content where I want to add few links to other page to get better pos on google.
';
$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
```html
My blog post content where I want to add few links to other page to get
better pos on google.
```
Other method
```php
// 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
```bash
composer test
```
## Credits
- Robin from [Pied Web](https://piedweb.com)
- [All Contributors](../../contributors)
## License
The MIT License (MIT). Please see [License File](LICENSE.md) for more information.