{"id":19030027,"url":"https://github.com/padosoft/laravel-google-structured-data-testing-tool","last_synced_at":"2025-10-29T00:02:07.237Z","repository":{"id":57035063,"uuid":"71710939","full_name":"padosoft/laravel-google-structured-data-testing-tool","owner":"padosoft","description":"Package for testing Schema.org markup or other structured data formats with google structured data testing tool undocumented API.","archived":false,"fork":false,"pushed_at":"2022-09-22T06:42:48.000Z","size":614,"stargazers_count":38,"open_issues_count":1,"forks_count":12,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-30T01:12:18.166Z","etag":null,"topics":["laravel","laravel-command","laravel-package","schema-org","seo","seo-meta","seotools"],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/padosoft.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-10-23T15:15:49.000Z","updated_at":"2025-02-13T06:33:52.000Z","dependencies_parsed_at":"2022-08-24T06:40:20.858Z","dependency_job_id":null,"html_url":"https://github.com/padosoft/laravel-google-structured-data-testing-tool","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/padosoft%2Flaravel-google-structured-data-testing-tool","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/padosoft%2Flaravel-google-structured-data-testing-tool/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/padosoft%2Flaravel-google-structured-data-testing-tool/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/padosoft%2Flaravel-google-structured-data-testing-tool/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/padosoft","download_url":"https://codeload.github.com/padosoft/laravel-google-structured-data-testing-tool/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249341824,"owners_count":21254193,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["laravel","laravel-command","laravel-package","schema-org","seo","seo-meta","seotools"],"created_at":"2024-11-08T21:16:15.664Z","updated_at":"2025-10-29T00:02:02.211Z","avatar_url":"https://github.com/padosoft.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Laravel Package for testing Schema.org markup or other structured data formats with google structured data testing tool undocumented API.\n\n[![Latest Version on Packagist](https://img.shields.io/packagist/v/padosoft/laravel-google-structured-data-testing-tool.svg?style=flat-square)](https://packagist.org/packages/padosoft/laravel-google-structured-data-testing-tool)\n[![Software License](https://img.shields.io/badge/license-MIT-brightgreen.svg?style=flat-square)](LICENSE.md)\n[![Build Status](https://img.shields.io/travis/padosoft/laravel-google-structured-data-testing-tool/master.svg?style=flat-square)](https://travis-ci.org/padosoft/laravel-google-structured-data-testing-tool)\n[![Quality Score](https://img.shields.io/scrutinizer/g/padosoft/laravel-google-structured-data-testing-tool.svg?style=flat-square)](https://scrutinizer-ci.com/g/padosoft/laravel-google-structured-data-testing-tool)\n[![Total Downloads](https://img.shields.io/packagist/dt/padosoft/laravel-google-structured-data-testing-tool.svg?style=flat-square)](https://packagist.org/packages/padosoft/laravel-google-structured-data-testing-tool)\n[![SensioLabsInsight](https://img.shields.io/sensiolabs/i/3a39da13-6f5f-4041-9700-81e8c1f2e387.svg?style=flat-square)](https://insight.sensiolabs.com/projects/3a39da13-6f5f-4041-9700-81e8c1f2e387)\n\nThis package provides a series of commands to automate and bulk check of Schema.org markup or other structured data formats with google structured data testing tool undocumented API that I found.\nGoogle already provides a good tool for testing markup data using the Search Console in Webmaster Tools.\nBut how can I test markup data if you want to programmatically test your web site urls or a bulk set of urls?\nYou can't do this with google wmt.\nThis package try to resolve these problems. \n\n## WARNING\nNote: This is an undocumented Google API. I found it when I interacted with Google’s Structured Data Testing Tool and Google Chrome debug console, \n thus there is no warranty that the API remains public or that the API changes make the package unusable.\n\nTable of Contents\n=================\n\n   * [Laravel Package for testing Schema.org markup or other structured data formats with google structured data testing tool undocumented API.](#laravel-package-for-testing-schemaorg-markup-or-other-structured-data-formats-with-google-structured-data-testing-tool-undocumented-api)\n      * [WARNING](#warning)\n      * [Requires](#requires)\n      * [Installation](#installation)\n      * [USAGE](#usage)\n         * [EXAMPLE:](#example)\n      * [SCHEDULE COMMAND](#schedule-command)\n      * [SCREENSHOOTS](#screenshoots)\n      * [Change log](#change-log)\n      * [Testing](#testing)\n      * [Contributing](#contributing)\n      * [Security](#security)\n      * [Credits](#credits)\n      * [About Padosoft](#about-padosoft)\n      * [License](#license)\n\n## Requires\n  \n- php: \u003e=7.0.0\n- illuminate/support: ^5.0\n- illuminate/http: ^5.0\n- padosoft/support\": ^1.9\n  \n## Installation\n\nYou can install the package via composer:\n``` bash\n$ composer require padosoft/laravel-google-structured-data-testing-tool\n```\nYou must install this service provider.\n\n``` php\n// config/app.php\n'provider' =\u003e [\n    ...\n    Padosoft\\Laravel\\Google\\StructuredDataTestingTool\\GoogleStructuredDataTestToolServiceProvider::class,\n    ...\n];\n```\nYou don't need to register the command in app/Console/Kernel.php, because it provides by GoogleStructuredDataTestToolServiceProvider register() method.\n\nYou can publish the config file of this package with this command:\n``` bash\nphp artisan vendor:publish --provider=\"Padosoft\\Laravel\\Google\\StructuredDataTestingTool\\GoogleStructuredDataTestToolServiceProvider\"\n```\nThe following config file will be published in `config/laravel-google-structured-data-testing-tool.php`\n``` php\nreturn array(\n    'mailSubjectSuccess' =\u003e env(\n        'STRUCTURED_DATA_TESTING_TOOL_SUBJECT_SUCCESS',\n        '[google-structured-data-testing-tool]: Ok - markup data is ok.'\n    ),\n    'mailSubjetcAlarm' =\u003e env(\n        'STRUCTURED_DATA_TESTING_TOOL_SUBJECT_ALARM',\n        '[google-structured-data-testing-tool]: Alarm - markup data error detected.'\n    ),\n    'mailFrom' =\u003e env('STRUCTURED_DATA_TESTING_TOOL_MESSAGE_FROM', 'info@example.com'),\n    'mailFromName' =\u003e env('STRUCTURED_DATA_TESTING_TOOL_MESSAGE_FROM_NAME', 'Info Example'),\n    'mailViewName' =\u003e env('STRUCTURED_DATA_TESTING_TOOL_MAIL_VIEW_NAME', 'laravel-google-structured-data-testing-tool::mail'),\n    'logFilePath' =\u003e env('STRUCTURED_DATA_TESTING_TOOL_LOG_FILE_PATH', storage_path() . '/logs/laravel-google-structured-data-testing-tool.log')\n);\n```\n\nIn your app config folder you can copy from src/config/.env.example the settings for yours .env file used in laravel-google-structured-data-testing-tool.php.\nIf you use mathiasgrimm/laravel-env-validator \nin src/config folder you'll find an example for validate the env settings. \n\n\n## USAGE\n\nWhen the installation is done you can easily run command to print help:\n```bash\nphp artisan google-markup:test https://www.padosoft.com\n```\n\nThe `google-markup:test` command check the structured data and schema.org markup in the given site https://www.padosoft.com\n\nYou can also pass the path of url txt (a file with one url per line) as an argument:\n`php google-markup:test /path/to/my/url.txt`\nso you can check multiple site/url (bulk) in one command!\n\nBy default, the command displays the result in console, but you can also\nsend an html email by using the `--mail`option:\n```bash\nphp google-markup:test https://www.padosoft.com --mail=mymail@mydomain.me\n```\n### EXAMPLE:\n\nHere is a basic example to check composer.lock into these dir:\n```bash\nphp artisan google-markup:test https://www.padosoft.com\n```\nHere is an example to send output report to mail:\n```bash\nphp artisan google-markup:test https://www.padosoft.com --mail=mymail@mydomain\n```\nHere is an example to ignore two urls for markup error (if command found any markup error into these dir, write it into output but the email subject isn't set to ALERT):\n```bash\nphp artisan google-markup:test /path/to/my/url.txt --mail=mymail@mydomain --whitelist=\"https://www.padosoft.com,https://blog.padosoft.it\"\n```\n\n## SCHEDULE COMMAND\n\nYou can schedule a daily (or weekly etc..) report easly, by adding this line into `schedule` method in `app/Console/Kernel.php` :\n```php\n// app/console/Kernel.php\n\nprotected function schedule(Schedule $schedule)\n{\n    ...\n\t$schedule-\u003ecommand('google-markup:test \"/path/to/my/url.txt\" --mail=mymail@mydomain')\n            -\u003edaily()\n            -\u003ewithoutOverlapping()\n            -\u003esendOutputTo(Config::get('laravel-google-structured-data-testing-tool.logFilePath'));\n}\n```\n\n## SCREENSHOOTS\n\nOUTPUT CONSOLE WITH ONE URL TEST:\n![screenshoot](https://raw.githubusercontent.com/padosoft/laravel-google-structured-data-testing-tool/master/resources/img/url-ok.png)\n\nOUTPUT CONSOLE BULK CHECK OK:\n![screenshoot](https://raw.githubusercontent.com/padosoft/laravel-google-structured-data-testing-tool/master/resources/img/bulk-ok.png)\n\nOUTPUT CONSOLE BULK CHECK WITH ERRORS:\n![screenshoot](https://raw.githubusercontent.com/padosoft/laravel-google-structured-data-testing-tool/master/resources/img/bulk-with-errors.png)\n\nEMAIL VIEW:\n![screenshoot](https://raw.githubusercontent.com/padosoft/laravel-google-structured-data-testing-tool/master/resources/img/email-ok.png)\n\nEMAIL VIEW WITH ERRORS:\n![screenshoot](https://raw.githubusercontent.com/padosoft/laravel-google-structured-data-testing-tool/master/resources/img/email-with-error.png)\n\n\n## Change log\n\nPlease see [CHANGELOG](CHANGELOG.md) for more information what has changed recently.\n\n## Testing\n\n``` bash\n$ composer test\n```\n\n## Contributing\n\nPlease see [CONTRIBUTING](CONTRIBUTING.md) for details.\n\n## Security\n\nIf you discover any security related issues, please email instead of using the issue tracker.\n\n## Credits\n- [Lorenzo Padovani](https://github.com/lopadova)\n- [All Contributors](../../contributors)\n\n## About Padosoft\nPadosoft (https://www.padosoft.com) is a software house based in Florence, Italy. Specialized in E-commerce and web sites.\n\n## License\n\nThe MIT License (MIT). Please see [License File](LICENSE.md) for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpadosoft%2Flaravel-google-structured-data-testing-tool","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpadosoft%2Flaravel-google-structured-data-testing-tool","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpadosoft%2Flaravel-google-structured-data-testing-tool/lists"}