{"id":21029847,"url":"https://github.com/kitconcept/kitconcept.seo","last_synced_at":"2025-08-23T17:45:02.778Z","repository":{"id":46339001,"uuid":"140301998","full_name":"kitconcept/kitconcept.seo","owner":"kitconcept","description":"SEO enhancements for the Plone Content Management System (Volto only)","archived":false,"fork":false,"pushed_at":"2025-03-18T14:26:27.000Z","size":270,"stargazers_count":1,"open_issues_count":7,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-06-18T06:17:30.043Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kitconcept.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":null,"funding":null,"license":"LICENSE.GPL","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-07-09T15:02:50.000Z","updated_at":"2025-01-05T16:34:45.000Z","dependencies_parsed_at":"2024-06-19T01:49:55.288Z","dependency_job_id":"7d0e96ed-8a34-489c-b019-e714f447263e","html_url":"https://github.com/kitconcept/kitconcept.seo","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/kitconcept/kitconcept.seo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kitconcept%2Fkitconcept.seo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kitconcept%2Fkitconcept.seo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kitconcept%2Fkitconcept.seo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kitconcept%2Fkitconcept.seo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kitconcept","download_url":"https://codeload.github.com/kitconcept/kitconcept.seo/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kitconcept%2Fkitconcept.seo/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261238910,"owners_count":23128882,"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":[],"created_at":"2024-11-19T12:14:31.398Z","updated_at":"2025-06-22T05:07:05.604Z","avatar_url":"https://github.com/kitconcept.png","language":"Python","funding_links":[],"categories":["SEO"],"sub_categories":[],"readme":"# kitconcept.seo\n\n[![Pypi](https://img.shields.io/pypi/status/kitconcept.seo.svg)](https://pypi.python.org/pypi/kitconcept.seo/)\n[![Pypi version](https://img.shields.io/pypi/v/kitconcept.seo.svg)](https://pypi.python.org/pypi/kitconcept.seo/)\n[![License](https://img.shields.io/pypi/l/kitconcept.seo.svg)](https://pypi.python.org/pypi/kitconcept.seo/)\n\n[![kitconcept, GmbH](https://raw.githubusercontent.com/kitconcept/kitconcept.seo/master/kitconcept.png)](https://kitconcept.com/)\n\nSEO enhancements for the Plone Content Management System.\nkitconcept.seo works with the latest Plone 6 and its default frontend [Volto](https://github.com/plone/volto).\nIt might still work with Plone Classic but that is not officially supported.\nIf you are looking for a full featured SEO solution for Plone Classic or older versions of Plone, we suggest looking into [fourdigits.seo](https://pypi.org/project/fourdigits.seo/).\n\n\n## Features\n\n- Allows to override meta title and meta description per page\n- Allows to set the noindex header to exclude pages from being indexed\n- Allows to set a canonical URL\n- Allows to set Open Graph title, description and image\n\n## Examples\n\nThis add-on can be seen in action at the following sites:\n\n- [German Aerospace Center (DLR)](www.dlr.de)\n- [FZ Jülich](www.fz-juelich.de)\n- [HI Ern](www.hi-ern.de/de)\n- [Zeelandia](www.zeelandia.de)\n- [VHS Ehrenamtsportal](www.vhs-ehrenamtsportal.de)\n\n## Translations\n\nThis product has been translated into\n\n- German\n\n## Installation\n\nInstall kitconcept.seo with `pip`:\n\n```shell\npip install kitconcept.seo\n```\nAnd to create the Plone site:\n\n```shell\nmake create_site\n```\n\n# Enable the SEO behavior\n\nTo enable the SEO tab for a specific content type you have to enable the kitconcept.seo behavior.\nGo to the page setup and then to the Dexterity Content Types control panel.\nChoose the content type you want to enable SEO for and enable the `kitconcept.seo` behavior.\n\n## Enable the SEO behavior programmatically\n\nEnable the kitconcept.seo behavior by adding the behavior to the Factory Type Information (FTI) of your type in your generic setup profile. E.g. to enable SEO for the document type, drop a Document.xml file into the `profiles/default/types` folder of your add-on product with the following content:\n\n```xml\n   \u003c?xml version=\"1.0\" encoding=\"utf-8\"?\u003e\n   \u003cobject name=\"Document\" meta_type=\"Dexterity FTI\" i18n:domain=\"plone\"\n     xmlns:i18n=\"http://xml.zope.org/namespaces/i18n\"\u003e\n     \u003cproperty name=\"behaviors\" purge=\"False\"\u003e\n       \u003celement value=\"kitconcept.seo\" /\u003e\n     \u003c/property\u003e\n   \u003c/object\u003e\n```\n\n## Add to Volto project or add-on\n\nTo add `kitconcept.seo` to your Volto project/add-on you need to edit the component you want to use it for.\nIf you want use it for your whole page you can use it in the ``View.jsx`` (see [here](https://6.docs.plone.org/volto/development/customizing-views.html) for further information on editing views in Volto).\n\nThan you use `react-helmet` Volto helper to set the title and description of the component. So import `react-helmet`\nwith:\n\n```jsx\n   import { Helmet } from '@plone/volto/helpers';\n```\n\nAnd finally add this to the `jsx` code of your component:\n\n```jsx\n   \u003cHelmet\n          title={\n            this.props.content.seo_title\n              ? this.props.content.seo_title\n              : this.props.content.title\n          }\n          meta={\n            this.props.content.seo_description\n              ? [\n                  {\n                    name: 'description',\n                    content: this.props.content.seo_description,\n                  },\n                ]\n              : [\n                  {\n                    name: 'description',\n                    content: this.props.content.description,\n                  },\n                ]\n          }\n          bodyAttributes={{\n            class: `view-${viewName.toLowerCase()}`,\n          }}\n        /\u003e\n```\n\n## Usage\n\nIn your Volto page you need to go to the edit mode of the page you want to add a title and description for SEO and open the properties of the page by clicking the properties under the save button. Choose SEO there and add a title and description in the fields. When you are done hit the save button.\n\n## Contribute\n\n- [Issue Tracker](https://github.com/collective/kitconcept.seo/issues)\n- [Source Code](https://github.com/collective/kitconcept.seo/)\n\n## License\n\nThe project is licensed under GPLv2.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkitconcept%2Fkitconcept.seo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkitconcept%2Fkitconcept.seo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkitconcept%2Fkitconcept.seo/lists"}