Skip to content

Commit

Permalink
initial local commit
Browse files Browse the repository at this point in the history
  • Loading branch information
paulmassen committed Dec 12, 2017
0 parents commit 82eda3d
Show file tree
Hide file tree
Showing 29 changed files with 45,776 additions and 0 deletions.
130 changes: 130 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,130 @@
# v2.1.5
## 12/07/2017
1. [](#new)
* Removed the empty script tags that appeared on page that did not use microdata
* Added some required fields to the organization microdata

# v2.1.4
## 11/22/2017
1. [](#fix)
* Fixed the url of structured data testing tool for non-english language

# v2.1.3
## 11/22/2017
1. [](#new)
* Added a button to validate the page microdata with Google structured data testing tool

# v2.1.2
## 10/12/2017
1. [](#bugfix)
* Fixed site_name open graph

# v2.1.1
## 10/12/2017
1. [](#bugfix)
* Fixed duplicate toggle

# v2.1.0
## 10/12/2017
1. [](#bugfix)
* Added highlight to Toggle fields
* Few languages fixes
* Added url for Organization microdata
* Few css fixes
* Added more placeholder

# v2.0.9
## 10/04/2017
1. [](#bugfix)
* Fixed string manipulation causing error on some install

# v2.0.8
## 10/04/2017
1. [](#new)
* Added Logo url to Organization Microdata

# v2.0.7
## 10/03/2017
1. [](#new)
* Added Organization Microdata

# v2.0.6
## 09/10/2017
1. [](#bugfix)
* Changed Description

# v2.0.5
## 09/10/2017
1. [](#bugfix)
* First Stable Release - Reads the docs before updating from a 1.0.x Version!
* Added Person Microdata

# v2.0.4
## 09/10/2017
1. [](#bugfix)
* Microdata is now automatically added to pages
* Page date and last modified is modified automatically in article microdata



# v2.0.3
## 09/08/2017
1. [](#bugfix)
* Fixed error on empty fields
* Added function for getting image width and height


# v2.0.2
## 09/08/2017
1. [](#bugfix)
* Fixed missing language.yaml entry
* Added style vertical to microdata for better readability
* Fixed many bugs
* Fixed bug when image on a modular folder

# v2.0.0
## 09/05/2017

1. [](#new)
* Complete Refactor of the plugin with proper metadata integration
* Users now just have to add {{json}} in the head of their base.html.twig
* Added configuration for enabling or disabling microdata fields
* Use of the fieldset and conditional fields
* Changed filepicker for the new mediapicker field

# v1.0.6
## 06/07/2017

1. [](#bugfix)
* Added Twitter URL Meta

# v1.0.5
## 06/06/2017

1. [](#bugfix)
* Fix Twitter title not displayed correctly

# v1.0.4
## 06/02/2017

1. [](#new)
* New Microdata type: Music Event, MusicAlbum
* Toggle will now display or hide the related fields

# v1.0.3
## 06/01/2017

1. [](#new)
* New feature: Microdata generation
2. [](#bugfix)
* Fix Page title not rendered correctly

# v0.9.1
## 06/01/2017

1. [](#new)
* Removed the site-wide configuration.
* Multiples layout fix
2. [](#bugfix)
* Fix blueprint causing toggle fields to duplicate.
* Fix fallback value when fields are not filled.
24 changes: 24 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@

MIT LICENSE
-----------

Copyright (c) 2017 Paul Massendari, https://github.com/paulmassen/grav-plugin-seo

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

126 changes: 126 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
# ![Grav SEO Plugin](https://github.com/paulmassen/grav-plugin-seo/blob/master/assets/logoseo.png?raw=true)

[![paypal](https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=MX77VZWPUKLTU)

##### Table of Contents:

* [About](#about)
* [Features](#features)
* [Installation and Updates](#installation-and-updates)
* [Usage](#usage)
* [Contributing](#contributing)
* [License](#license)


## About

`Seo` is an user-friendly plugin for [GetGrav.org](http://getgrav.org) used to manage all your metatags in order to customize your pages appearance in Search Engine Results or social networks. The plugin also allows the generation of JSON-LD Microdata.

## Features

### Google
You can see and customize how your page will look on Google Search Results.

![Grav SEO Plugin](https://raw.githubusercontent.com/paulmassen/grav-plugin-seo/master/assets/demoseoplugin.gif)

### Twitter
You can also preview how your page will look when shared on twitter

![Grav SEO Plugin](https://raw.githubusercontent.com/paulmassen/grav-plugin-seo/master/assets/twitter.gif)


### Facebook
And on Facebook

![Facebook Live Preview](https://raw.githubusercontent.com/paulmassen/grav-plugin-seo/master/assets/facebook.gif)


### JSON-LD

You can also generate Schema.org JSON Microdata from the admin.
![Article Microdata](https://raw.githubusercontent.com/paulmassen/grav-plugin-seo/master/assets/article_json.png)
This will generate the following Json-ld between script tags
```JSON
{
"@context": "http://schema.org",
"@type": "Article",
"headline": "Article Title",
"mainEntityOfPage": {
"@type": "WebPage",
"url": "http://yourwebsite.com"
},
"articleBody": "Lorem Ipsum dolor sit amet",
"datePublished": "2017-12-01T00:00:00+00:00",
"dateModified": "2019-01-01T00:00:00+00:00",
"description": "Description of the article",
"author": "Steve Jobs",
"publisher": {
"@type": "Organization",
"name": "Apple",
"logo": {
"@type": "ImageObject",
"url": "http://yourwebsite.com/home/logo.png",
"width": "200",
"height": "100"
}
},
"image": {
"@type": "ImageObject",
"url": "http://yourwebsite.com/home/myimage.jpg",
"width": "800",
"height": "600"
}
}
```
#### Feedback needed

As this plugin is in its early stage, please do not hesitate to leave a feedback, to suggest modification or features.

### TO-DO

- [ ] Add more Microdata type
- [ ] Add Translations (Contribution welcomed!)
- [x] Add the possibility to add multiple microdata of the same type
- [ ] YoastSEO text analysis integration (WIP)
- [ ] Add some microdata on every page




## Installation and Updates

### Updating from Previous releases

As there is a lot of changes from previous releases, be careful when updating, as your previously set values might be lost.
The previous version required to modify your base template, whereas the 2.0+ version of the plugin now adds metadata and microdata automatically to your existing Installation.

Installing or updating the `SEO` plugin can be done in one of three ways. Using the GPM (Grav Package Manager) installation update method (i.e. `bin/gpm install seo`) or manual install by downloading [this plugin](https://github.com/paulmassen/grav-plugin-seo) and extracting all plugin files to

/your/site/grav/user/plugins/seo

Once installed, the plugin will automatically set the metadata and append the json-ld microdatas to your document.
If you plan on using the Twitter feature, make sure to fill your user ID in tab Plugins > SEO > Twitter ID

## Configuration

Configuration is done through the plugin configuration page, accessible by clicking on Plugins > Seo. On this page, you can choose to enable the microdata fields you will use.
Make sure to fill the Facebook ID field as well as the Twitter ID field, in order for your meta tags to be validated.

## Usage

The `SEO` plugin appends a SEO tab on every pages where you can manage and define how your website will look on search engine results and on social networks.


## Contributing

You can contribute at any time! Before opening any issue, please search for existing issues!

After that please note:

* If you find a bug, would like to make a feature request or suggest an improvement, [please open a new issue][issues]. If you have any interesting ideas for additions to the syntax please do suggest them as well!
* Feature requests are more likely to get attention if you include a clearly described use case.



## License

Binary file added assets/article_json.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/demoseoplugin.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/facebook.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/gravlogo3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/logofacebook.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/logoseo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/twitter.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/twitter.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
110 changes: 110 additions & 0 deletions blueprints.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
name: "SEO"
version: "2.1.5"
description: "Manage your site’s meta tags for display in search engine results or social media networks. Includes an easy-to-use live preview feature."
icon: "google"
#testing: true
author:
name: "Paul Massendari"
email: "[email protected]"
homepage: "https://github.com/paulmassen/grav-plugin-seo"
keywords: ["seo", "meta", "microdata", "schema", "plugin"]
bugs: "https://github.com/paulmassen/grav-plugin-seo/issues"
license: "MIT/GPL"
dependencies:
- { name: grav, version: '>=1.3.8' }
- { name: admin, version: '>=1.6.6' }

form:
validation: strict
fields:
enabled:
type: toggle
label: PLUGIN_ADMIN.PLUGIN_STATUS
highlight: 1
default: 1
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
article:
type: toggle
label: Enable Article Microdata
highlight: 1
default: 1
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
event:
type: toggle
label: Enable Event Microdata
highlight: 1
default: 1
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
restaurant:
type: toggle
label: Enable Restaurant Microdata
highlight: 1
default: 1
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
musicevent:
type: toggle
label: Enable Music Event Microdata
highlight: 1
default: 1
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
person:
type: toggle
label: Enable Person Microdata
highlight: 1
default: 1
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
organization:
type: toggle
label: Enable Organization Microdata
highlight: 1
default: 1
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
musicalbum:
type: toggle
label: Enable Music Album Microdata
highlight: 1
default: 1
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
facebookid:
type: text
label: Facebook App ID
twitterid:
type: text
label: Twitter ID
placeholder: '@yourusername'
testicon:
type: iconpicker
label: icon picker

Loading

0 comments on commit 82eda3d

Please sign in to comment.