{"id":20499811,"url":"https://github.com/sherlockode/syliusadvancedcontentplugin","last_synced_at":"2025-04-13T18:52:35.319Z","repository":{"id":92800048,"uuid":"585907651","full_name":"sherlockode/SyliusAdvancedContentPlugin","owner":"sherlockode","description":"This Sylius plugin provides advanced CMS features for end user contribution","archived":false,"fork":false,"pushed_at":"2025-02-12T14:47:04.000Z","size":95,"stargazers_count":1,"open_issues_count":1,"forks_count":1,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-03-22T10:37:34.727Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","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/sherlockode.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2023-01-06T12:13:01.000Z","updated_at":"2025-02-12T14:46:34.000Z","dependencies_parsed_at":null,"dependency_job_id":"f845a2e8-fe82-4b85-99fc-8bc1f8ac7d5b","html_url":"https://github.com/sherlockode/SyliusAdvancedContentPlugin","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sherlockode%2FSyliusAdvancedContentPlugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sherlockode%2FSyliusAdvancedContentPlugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sherlockode%2FSyliusAdvancedContentPlugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sherlockode%2FSyliusAdvancedContentPlugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sherlockode","download_url":"https://codeload.github.com/sherlockode/SyliusAdvancedContentPlugin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248765999,"owners_count":21158296,"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-15T18:18:33.155Z","updated_at":"2025-04-13T18:52:35.296Z","avatar_url":"https://github.com/sherlockode.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Sylius AdvancedContent plugin\n\n----\n\n[ ![](https://img.shields.io/packagist/l/sherlockode/sylius-advanced-content-plugin)](https://packagist.org/packages/sherlockode/sylius-advanced-content-plugin \"License\")\n[ ![](https://img.shields.io/packagist/v/sherlockode/sylius-advanced-content-plugin)](https://packagist.org/packages/sherlockode/sylius-advanced-content-plugin \"Version\")\n[ ![](https://poser.pugx.org/sherlockode/sylius-advanced-content-plugin/downloads)](https://packagist.org/packages/sherlockode/sylius-advanced-content-plugin \"Total Downloads\")\n[ ![Support](https://img.shields.io/badge/support-contact%20author-blue])](https://www.sherlockode.fr/contactez-nous/?utm_source=github\u0026utm_medium=referral\u0026utm_campaign=plugins_sylius_acb)\n\n![image](https://user-images.githubusercontent.com/22291441/230099691-0fad8407-9883-4f0c-bdbd-9d6a8245a8db.png)\n\n## Table of Content\n\n----\n\n* [Overview](#overview)\n* [Installation](#installation)\n* [Configuration](#configuration)\n* [Usage](#usage)\n* [Demo](#demo-sylius-shop)\n* [Additional resources for developers](#additional-resources-for-developers)\n* [License](#license)\n* [Contact](#contact)\n\n\n# Overview\n\n----\n\nThis plugin enables Sherlockode's AdvancedContentBundle on your Sylius website.\n\nIt provides advanced CMS features for end user contribution.\nUsers can build their website pages quickly and effortlessly thanks to our intuitive interface.\nSeveral standard elements are included, such as text block, heading, image, image carousel, video player, ...\nResponsive layouts can be shaped as needed with row and column elements.\nDrafts are saved automatically and it's easy to rollback to a previous version.\nCustom elements can be added simply with a few lines of code.\n\n# Installation\n\n----\n\nInstall the plugin with composer:\n\n```bash\n$ composer require sherlockode/sylius-advanced-content-plugin\n```\n\n# Configuration\n\n----\n\nImport the routing configuration and Sylius configuration from the bundle\n\n```yaml\n# config/sylius_acb.yaml\nimports:\n    - { resource: \"@SherlockodeSyliusAdvancedContentPlugin/Resources/config/config.yaml\" }\n```\n\n```yaml\n# config/routes/sylius_acb.yaml\nsherlockode_advanced_content_bundle:\n    resource: \"@SherlockodeAdvancedContentBundle/Resources/config/routing/base.xml\"\n    prefix: '/%sylius_admin.path_name%/acb'\n\nsherlockode_advanced_content:\n    resource: \"@SherlockodeSyliusAdvancedContentPlugin/Resources/config/admin_routing.yaml\"\n    prefix: '/%sylius_admin.path_name%/acb'\n```\n\nRegarding the assets, the same setup as for the standalone AdvancedContentBundle should be done.\n\nUpdate your `package.json` with the following:\n\n```json\n{\n  \"dependencies\": {\n    \"@fortawesome/fontawesome-free\": \"^6.1.2\",\n    \"jquery\": \"^3.5.0\",\n    \"jquery-ui\": \"1.12.1\"\n  }\n}\n```\n\nIn the admin JS entry file from your assets, add the resources from the bundle:\n\n```js\n// ./assets/admin/entry.js\n//...\nimport '../../vendor/sherlockode/advanced-content-bundle/Resources/public/css/index.scss';\nimport '../../vendor/sherlockode/advanced-content-bundle/Resources/js/index.js';\nimport '../../vendor/sherlockode/sylius-advanced-content-plugin/src/Resources/public/css/index.scss';\n\nimport '@fortawesome/fontawesome-free/css/fontawesome.css';\nimport '@fortawesome/fontawesome-free/css/solid.css';\n```\n\nIf you are using Webpack, you can add the following lines to your admin     configuration:\n```js\n// ./webpack.config.js\n//...\nEncore.addLoader({\n    resolve: {\n        alias: {\n            './acb-notification.js$': path.resolve(__dirname, 'vendor/sherlockode/sylius-advanced-content-plugin/src/Resources/js/AdvancedContentBundle/acb-notification.js')\n        }\n    }\n});\n```\n\n# Usage\n\n----\n\nThe plugin adds a new Content section in the admin menu.\\\nIt includes links to the Page grid, to the Content grid and to the Tools page.\n\nYou can checkout our documentation on the [Advanced Content Bundle](https://github.com/sherlockode/advanced-content-bundle) to learn more on how to use the plugin:\n- [Terminology](https://github.com/sherlockode/advanced-content-bundle#terminology)\n- [Upload Configuration](https://github.com/sherlockode/advanced-content-bundle#upload-configuration)\n- [Advanced Documentation](https://github.com/sherlockode/advanced-content-bundle#advanced-documentation)\n\n## Customizing page preview\n\nBy default, the layout used to show the page previews is located at `@SherlockodeSyliusAdvancedContentPlugin/Preview/preview.html.twig`.\nYou can customize this template by overriding it like [any template in a third party bundle](https://symfony.com/doc/current/bundles/override.html#templates), or by replacing the `sherlockode_sylius_acb.preview.view_handler` service to manage different layouts depending on the page type:\n\n```yaml\nservices:\n    sherlockode_sylius_acb.preview.view_handler:\n        class: App\\Acb\\ViewHandler\n```\n\nAnd defining the service by yourself:\n\n```php\n\u003c?php\n\nnamespace App\\Acb;\n\nuse Sherlockode\\AdvancedContentBundle\\Model\\PageInterface;\nuse Sherlockode\\AdvancedContentBundle\\Model\\ScopeInterface;\nuse Sherlockode\\SyliusAdvancedContentPlugin\\Preview\\ViewHandlerInterface;\n\nclass ViewHandler implements ViewHandlerInterface\n{\n    /**\n     * @param PageInterface  $page\n     * @param ScopeInterface $scope\n     *\n     * @return string|null\n     */\n    public function getViewTemplate(PageInterface $page, ScopeInterface $scope): ?string\n    {\n        if ('homepage' === $page-\u003egetPageIdentifier()) {\n            return '@SyliusShop/Acb/homepage.html.twig';\n        }\n        \n        return '@SyliusShop/Acb/page.html.twig';\n    }\n}\n```\n\n# Demo Sylius Shop\n\n----\n\nWe created a demo app with some useful use-cases of plugins!\nVisit [sylius-demo.sherlockode.fr](https://sylius-demo.sherlockode.fr/) to take a look at it. The admin can be accessed under\n[sylius-demo.sherlockode.fr/admin/login](https://sylius-demo.sherlockode.fr/admin/login) link.\\\nPlugins that we have used in the demo:\n\n| Plugin name                  | GitHub                                                     | Sylius' Store |\n|------------------------------|------------------------------------------------------------|---------------|\n| Advance Content Bundle (ACB) | https://github.com/sherlockode/SyliusAdvancedContentPlugin | -             |\n| Mondial Relay                | https://github.com/sherlockode/SyliusMondialRelayPlugin    | -             |\n| Checkout Plugin              | https://github.com/sherlockode/SyliusCheckoutPlugin        | -             |\n| FAQ                          | https://github.com/sherlockode/SyliusFAQPlugin             | -             |\n\n\n# Additional resources for developers\n\n----\n\nTo learn more about our contribution workflow and more, we encourage you to use the following resources:\n* [Sylius Documentation](https://docs.sylius.com/en/latest/)\n* [Sylius Contribution Guide](https://docs.sylius.com/en/latest/contributing/)\n* [Sylius Online Course](https://sylius.com/online-course/)\n\n\n# License\n\n----\n\nThis plugin's source code is completely free and released under the terms of the [MIT license](LICENSE).\n\n\n# Contact\n\n----\n\nIf you want to contact us, the best way is to fill the form on [our website](https://www.sherlockode.fr/contactez-nous/?utm_source=github\u0026utm_medium=referral\u0026utm_campaign=plugins_sylius_acb) or send us an e-mail to contact@sherlockode.fr with your question(s). We guarantee that we answer as soon as we can!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsherlockode%2Fsyliusadvancedcontentplugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsherlockode%2Fsyliusadvancedcontentplugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsherlockode%2Fsyliusadvancedcontentplugin/lists"}