Download the PHP package highsolutions/google-keywords without Composer
On this page you can find all versions of the php package highsolutions/google-keywords. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package google-keywords
Laravel Google Keywords
A Laravel package for synchronizing with Google Search Console to get visitors' search keywords.
Installation
Add the following line to the require
section of your Laravel webapp's composer.json
file:
Run composer update
to install the package.
This package uses Laravel 5.5 Package Auto-Discovery.
For previous versions of Laravel, you need to update config/app.php
by adding an entry for the service provider:
Next, publish all package resources:
This will add to your project:
- migration - database table for storing keywords
- configuration - package configurations
Remember to launch migration:
Next step is to add cron task via Scheduler (app\Console\Kernel.php
):
Configuration
Setting name | Description | Default value |
---|---|---|
websites.*.url | URL of website (with protocol) | '' |
websites.*.credentials | JSON credentials file on server | storage_path('app/google-search-credentials.json') |
Websites are defined in configuration as:
Invalid configuration will return information about error.
Google Search Console and Google Cloud Platform integration
In order to get access to keywords from Google Search you need to complete 2 steps:
1) Google Search Console (https://www.google.com/webmasters/tools/home)
- Add your website
- Verify your ownership of website
2) Google Cloud Platform (https://console.cloud.google.com/apis/credentials)
- Add new project
- Generate server-side API key
- Download JSON credentials (name-of-project-id.json) and store them into
storage/app
folder - Copy e-mail address of API key (e.g. [email protected]) - available here: https://console.cloud.google.com/iam-admin/serviceaccounts/project?project=PROJECT_NAME-ID
- Assign it as owner of website in Google Search Console
Model structure
Model consists of fields:
id
- primary keyurl
- URL of websitekeyword
- full keyworddate
- date of resultclicks
- number of clicks on link in search view with particular keywordimpressions
- number of views of link in search view with particular keywordctr
- click through rate (clicks / impressions)avg_position
- average position of link on list of results in search view with particular keyword
Model API
To make usage of gathered data easier, there is a simple API for most common use cases:
url('http://example.com')
- adds where clause for limiting results to only one website (not necessary when you fetch only one website)grouped()
- prepares sum of clicks and impressions of each keyword gathered for the websitebyDay()
- prepares sum of clicks and impressions of each dayorderByDate($dir = 'asc')
- sorts results by dateorderBySum($param = 'clicks')
- sorts results by sum of clicks/impressions (works withgrouped
scope)orderByAlpha($dir = 'asc')
- sorts results alphabetically
Usage
1) Get most popular keywords of your website:
2) Get all keywords stored day by day:
3) Get number of clicks/impressions in the last month:
Changelog
1.2.0
- Laravel 7.x and 8.x support
1.1.0
- Laravel 6.0 support
1.0.3
- Support Package Auto-Discovery
1.0.2
- Fix error with checking config
1.0.0
- Create package
- Model API
Roadmap
- Gather info about subsites also
- Examples of usage as controllers and views
- Comments
- Unit tests!
Credits
This package is developed by HighSolutions, software house from Poland in love in Laravel.
All versions of google-keywords with dependencies
illuminate/support Version 5.*|^6.0|^7.0|^8.0
google/apiclient Version ^2.0