Skip to content

Commit

Permalink
Sonata Page Bundle 4 (#1440)
Browse files Browse the repository at this point in the history
* Sonata Page Bundle 4

* Added post install
  • Loading branch information
eerison authored Dec 15, 2022
1 parent 01511fa commit d870191
Show file tree
Hide file tree
Showing 8 changed files with 201 additions and 0 deletions.
76 changes: 76 additions & 0 deletions sonata-project/page-bundle/4.0/config/packages/sonata_page.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
sonata_block:
default_contexts: [sonata_page_bundle]

sonata_admin:
assets:
extra_javascripts:
- bundles/sonatapage/app.js
extra_stylesheets:
- bundles/sonatapage/app.css

# https://docs.sonata-project.org/projects/SonataPageBundle/en/4.x/reference/advanced_configuration/
sonata_page:
multisite: host
use_streamed_response: false

router_auto_register:
enabled: true
priority: 150
ignore_route_patterns:
- ^(.*)admin(.*) # ignore admin route, ie route containing 'admin'
- ^_(.*) # ignore symfony routes
ignore_routes:
- sonata_page_cache_esi
- sonata_page_cache_ssi
- sonata_page_js_sync_cache
- sonata_page_js_async_cache
- sonata_cache_esi
- sonata_cache_ssi
- sonata_cache_js_async
- sonata_cache_js_sync
- sonata_cache_apc
ignore_uri_patterns:
- ^/admin\/ # ignore admin route, ie route containing 'admin'

#https://docs.sonata-project.org/projects/SonataPageBundle/en/4.x/reference/page_composer/
default_template: default
templates:
default:
path: '@SonataPage/layout.html.twig'
name: 'default'
containers:
header:
name: Header
content_top:
name: Top content
content:
name: Main content
content_bottom:
name: Bottom content
footer:
name: Footer
matrix:
layout: |
HHHHHHHH
HHHHHHHH
TTTTTTTT
TTTTTTTT
CCCCCCCC
CCCCCCCC
BBBBBBBB
BBBBBBBB
FFFFFFFF
FFFFFFFF
mapping:
H: header
T: content_top
C: content
B: content_bottom
F: footer

direct_publication: '%kernel.debug%'

catch_exceptions:
not_found: [404] # render 404 page with "not_found" key (name generated: _page_internal_error_{key})
fatal: [500] # so you can use the same page for different http errors or specify specific page for each error
3 changes: 3 additions & 0 deletions sonata-project/page-bundle/4.0/config/routes/sonata_page.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
sonata_page_exceptions:
resource: '@SonataPageBundle/Resources/config/routing/exceptions.xml'
prefix: /
9 changes: 9 additions & 0 deletions sonata-project/page-bundle/4.0/manifest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"bundles": {
"Sonata\\PageBundle\\SonataPageBundle": ["all"]
},
"copy-from-recipe": {
"config/": "%CONFIG_DIR%/",
"src/": "%SRC_DIR%/"
}
}
13 changes: 13 additions & 0 deletions sonata-project/page-bundle/4.0/post-install.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
* Your Page is almost ready:
1. Generate a migration for Sonata Page Database <info>php bin/console doctrine:migrations:diff</info>
<comment>
If you use Doctrine Attribute Reference, You must change Sonata Entities generated in Entity folder.
You can check more details at https://www.doctrine-project.org/projects/doctrine-orm/en/current/reference/attributes-reference.html

You can also use Rector to refactor, check more details at https://getrector.org/blog/how-to-upgrade-annotations-to-attributes
</comment>
2. Apply the migration generated <info>php bin/console doctrine:migrations:migrate --no-interaction</info>
3. Create your first site: <info>bin/console sonata:page:create-site --enabled --name=localhost --locale=- --host=localhost --relativePath=- --enabledFrom=now --enabledTo=- --default</info>
<comment>After you generate your site, You will see few commands to execute to have your Site ready.</comment>

* <fg=blue>Read</> the documentation at <comment>https://docs.sonata-project.org/projects/SonataPageBundle/en/4.x/</comment>
24 changes: 24 additions & 0 deletions sonata-project/page-bundle/4.0/src/Entity/SonataPageBlock.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<?php

declare(strict_types=1);

namespace App\Entity;

use Doctrine\ORM\Mapping as ORM;
use Sonata\PageBundle\Entity\BaseBlock;

/**
* @ORM\Entity
* @ORM\Table(name="page__block")
*/
class SonataPageBlock extends BaseBlock
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*
* @var int
*/
protected $id;
}
24 changes: 24 additions & 0 deletions sonata-project/page-bundle/4.0/src/Entity/SonataPagePage.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<?php

declare(strict_types=1);

namespace App\Entity;

use Doctrine\ORM\Mapping as ORM;
use Sonata\PageBundle\Entity\BasePage;

/**
* @ORM\Entity
* @ORM\Table(name="page__page")
*/
class SonataPagePage extends BasePage
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*
* @var int
*/
protected $id;
}
24 changes: 24 additions & 0 deletions sonata-project/page-bundle/4.0/src/Entity/SonataPageSite.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<?php

declare(strict_types=1);

namespace App\Entity;

use Doctrine\ORM\Mapping as ORM;
use Sonata\PageBundle\Entity\BaseSite;

/**
* @ORM\Entity
* @ORM\Table(name="page__site")
*/
class SonataPageSite extends BaseSite
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*
* @var int
*/
protected $id;
}
28 changes: 28 additions & 0 deletions sonata-project/page-bundle/4.0/src/Entity/SonataPageSnapshot.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
<?php

declare(strict_types=1);

namespace App\Entity;

use Doctrine\ORM\Mapping as ORM;
use Sonata\PageBundle\Entity\BaseSnapshot;

/**
* @ORM\Entity
* @ORM\Table(name="page__snapshot", indexes={
* @ORM\Index(
* name="idx_snapshot_dates_enabled", columns={"publication_date_start", "publication_date_end","enabled"
* })
* })
*/
class SonataPageSnapshot extends BaseSnapshot
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*
* @var int
*/
protected $id;
}

0 comments on commit d870191

Please sign in to comment.