bnomei/kirby3-seobility

Kirby Plugin to use Seobility.net

Installs: 625

Dependents: 0

Suggesters: 0

Security: 0

Stars: 7

Watchers: 2

Forks: 0

Open Issues: 0

Type:kirby-plugin

5.0.1 2024-12-03 11:12 UTC

This package is auto-updated.

Last update: 2024-12-03 11:12:47 UTC


README

Kirby 5 PHP 8.2 Release Downloads Coverage Maintainability Discord Buymecoffee

Kirby Plugin to use Seobility.net

  • keyword check (scrapper, paid api)
  • real time SERP ranking (paid api)
  • term suggestion (paid api)

Installation

  • unzip master.zip as folder site/plugins/kirby3-seobility or
  • git submodule add https://github.com/bnomei/kirby3-seobility.git site/plugins/kirby3-seobility or
  • composer require bnomei/kirby3-seobility

Requirements

robots.txt

You need a robots.txt file for the checks to work on your production server. Either you create a custom robots.txt-file or use my Robots.txt plugin. Make sure the Seobility.net bot can crawl the website by setting your global debug config to false or by adding the following to your robots.txt:

User-agent: *
Disallow: /kirby/
Disallow: /site/
Disallow: /cdn-cgi/
Allow: /media/

Localhost = No Score

The plugin will not query the API on localhost since the API would not be able to read the HTML content of your page.

Usage

Keyword check (scrapper, paid)

Add the field keywordcheck to your blueprints.

site/blueprints/default.yml

fields:
  keywordcheck: # the field id must be exactly like this
    label: Seobility.net Keywordcheck
    type: keywordcheck

Enter keywords(s) in the Panel. Save and get a score. Clicking on the score will take you to new browser tab with the full report.

keywordcheck

You can also read the score with a PageMethod if you need it in you business logic.

site/templates/default.php

echo $page->keywordcheckScore();

To show the score of the keywordcheck field the plugin will scrape the web based tools of Seobility.net or query your paid API account and cache the results until the content page is modified or cache expires (see settings below).

Tip

EVERY time you press the save button in the Panel for a page with this field a request to the API will be made. This might delay saving by a second or two. The paid API is a tiny bit faster.

Real-time SERP Ranking (paid api)

This field is a button to trigger a real-time, synchronous (direct) API call. The average response time is up to 30 seconds and it will return the rank, title and description as listed on the specified search engine (see config setting bnomei.seobility.searchengine).

Note

You need to have a keywordcheck field on the same blueprint and at least one keyword set to get a SERP ranking.

site/blueprints/default.yml

fields:
  ranking:
    headline: Seobility.net SERP Ranking
    label: Fetch Rank
    progress: Fetching Rank...
    # notranked: Page is not ranked.
    type: ranking

ranking

Term Suggestion (paid api)

This field is a button to trigger a term suggestion (more, less, ok) for the specified search engine (see settings).

Note

You need to have a keywordcheck field on the same blueprint and at least one keyword set to get further term suggestions.

site/blueprints/default.yml

fields:
  termsuggestion:
    headline: Seobility.net Term Suggestion
    label: Fetch Term Suggestions
    progress: Fetching Term Suggestions...
    type: termsuggestion

termsuggestion

Paid API

You can set the API-key in the config if you want to use features from the paid api.

site/config/config.php

return [
    // other config settings ...
    'bnomei.seobility.apikey' => 'YOUR-KEY-HERE',
];

You can also set a callback if you use the dotenv Plugin.

site/config/config.php

return [
    // other config settings ...
    'bnomei.seobility.apikey' => function() { 
        return env('SEOBILITY_APIKEY'); 
    },
];

Cache

When Kirby's global debug config is set to true the complete plugin cache will be flushed but caches will still be created.

Settings

Disclaimer

This plugin is provided "as is" with no guarantee. Use it at your own risk and always test it yourself before using it in a production environment. If you find any issues, please create a new issue.

License

MIT

It is discouraged to use this plugin in any project that promotes racism, sexism, homophobia, animal abuse, violence or any other form of hate speech.