in-square / opendxp-post-bundle
Post bundle for OpenDXP.
Package info
github.com/in-square/opendxp-post-bundle
Type:opendxp-bundle
pkg:composer/in-square/opendxp-post-bundle
Requires
- php: ^8.3
- open-dxp/opendxp: ^1.0
- symfony/console: ^7.4
- symfony/framework-bundle: ^7.4
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.64
- phpstan/phpstan: ^1.11
- phpunit/phpunit: ^11.5
This package is not auto-updated.
Last update: 2026-03-31 10:25:05 UTC
README
Bundle provides basic blog data objects (Post, PostCategory, PostTag), archive tables for monthly counts, and tools for organizing posts by date.
Features
- Installs
PostCategory,PostTag, andPostclasses (withdatefield). - Creates archive tables:
post_archive_by_category,post_archive_by_tag. - Event-based change tracking + CRON-friendly archive rebuild.
- Date-based folder sorting for existing posts.
Requirements
- PHP 8.3
- Symfony 7.4
- OpenDXP 1.0
Installation
Install the bundle via Composer and run the OpenDXP installer:
composer require in-square/opendxp-post-bundle php bin/console opendxp:bundle:install InSquareOpendxpPostBundle
Configuration
Create config/packages/in_square_opendxp_post.yaml in the OpenDXP project:
in_square_opendxp_post: post_root_folder: '/posts' sorting: enabled: true date_field: 'date' archive: idle_minutes: 10
Archive rebuild (CRON)
Event subscriber stores last_posts_change in cache. Run rebuild command via CRON:
* * * * * /usr/bin/php /path/to/opendxp/bin/console insquare:post-archive:rebuild
Command supports --force and --idle-minutes:
php bin/console insquare:post-archive:rebuild --force
Sorting existing posts
Use this command to move existing posts into /Y/m/d folders:
php bin/console insquare:post:sort
Development
Static analysis and coding standards:
composer phpstan composer php-cs composer php-cs:dry