Skip to main content

kitconcept GmbH

collective.blog

Blog features for Plone

PyPI PyPI - Python Version PyPI - Wheel PyPI - License PyPI - Status

PyPI - Plone Versions

Meta Code Style

GitHub contributors GitHub Repo stars

Features

collective.blog adds blogging features to a Plone site.

Content Types

name context
Blog A folderish content type that supports adding Posts and Authors
Blog Author An Author in a blog
Blog Tag A Tag for categorizing posts in a blog
Blog Post A Post in a blog

Installation

Add collective.blog as a dependency on your package's setup.py

    install_requires = [
        "collective.blog",
        "Plone",
        "plone.restapi",
        "setuptools",
    ],

Also, add collective.blog to your package's configure.zcml (or dependencies.zcml):

<include package="collective.blog" />

Generic Setup

To automatically enable this package when your add-on is installed, add the following line inside the package's profiles/default/metadata.xml dependencies element:

    <dependency>profile-collective.blog:default</dependency>

Source Code and Contributions

We welcome contributions to collective.blog.

You can create an issue in the issue tracker, or contact a maintainer.

Development requirements

  • Python 3.8 or later
  • Docker

Setup

Install all development dependencies -- including Plone -- and create a new instance using:

make install

Update translations

make i18n

Format codebase

make format

Run tests

Testing of this package is done with pytest and tox.

Run all tests with:

make test

Run all tests but stop on the first error and open a pdb session:

./bin/tox -e test -- -x --pdb

Run only tests that match TestVocabAuthors:

./bin/tox -e test -- -k TestVocabAuthors

Run only tests that match TestVocabAuthors, but stop on the first error and open a pdb session:

./bin/tox -e test -- -k TestVocabAuthors -x --pdb

Credits

The development of this add-on has been kindly sponsored by German Aerospace Center (DLR) and Forschungszentrum Jülich.

German Aerospace Center (DLR) Forschungszentrum Jülich

Developed by kitconcept

License

The project is licensed under GPLv2.

Contributors

  • Jonas Piterek [@jonaspiterek]
  • Érico Andrei [@ericof]
  • Timo Stollenwerk [@tisto]
  • collective [info@kitconcept.com]

Changelog

1.0.1 (2025-02-04)

Bug fixes:

  • Override addCreator for not setting the default author if not set. @sneridagh #80
  • change tag translation in queryfield. @jnptk #81

1.0.0 (2025-01-16)

Bug fixes:

  • Remove unnecessary .gitkeep files which broke the profile in Plone 5. @davisagli #79

1.0.0a13 (2024-06-17)

Bug fixes:

  • Remove custom serializers for blog content types. They were serializing preview_image_link in the wrong format. @davisagli #75

1.0.0a12 (2024-04-24)

Bug fixes:

  • Fix tags widget to not have an open vocabulary, and adjust Volto widget @sneridagh #71

1.0.0a11 (2024-04-10)

Bug fixes:

  • Fix 'Wrong contained type' error for new blog posts with no tags created using plone.restapi. @davisagli #69

1.0.0a10 (2024-03-28)

New features:

    • Update German translations [@jonaspiterek] #63
  • Update Brazilian Portuguese translations [@ericof] #67

Internal:

  • Add a GitHub Actions workflow to automatically check for Changelog entries on pull requests [@ericof] #65

1.0.0a9 (2024-03-27)

New features:

  • Added Blog Tag content type. A tags folder is created for new blogs, but not existing ones. @davisagli #61

1.0.0a8 (2024-02-28)

Bug fixes:

  • Limit authors vocabulary to authors from the current blog context. @davisagli #59

1.0.0a7 (2024-02-02)

New features:

  • Allow a Blog Post to be created inside a subfolder of a Blog #54

Bug fixes:

  • Refactor post_authors indexer to avoid repeated calls to the catalog #56

1.0.0a6 (2024-01-29)

New features:

    • Add indexer for indexing authors from a blog post [@jonaspiterek] #53

1.0.0a5 (2023-12-04)

New features:

  • Translate id and title for Authors folder on creation [@jonaspiterek] #50

1.0.0a4 (2023-11-28)

Bug fixes:

  • Rename Blog fti to BlogFolder, allowing contents with id blog to be added [@ericof] #42
  • Add initial blocks to auto_add_authors_container handler [@jonaspiterek] #43
  • Rename blog index and metadata to blog_uid [@ericof] #48

1.0.0a3 (2023-11-24)

New features:

  • Control creation of "Authors" folder via registry configuration [@ericof] #34
  • Add control panel to configure Blog Settings [@ericof] #36
  • Additional information returned on /@authors endpoint [@ericof] #40

Internal:

  • Increase test coverage of the package [@ericof] #38

1.0.0a2 (2023-11-23)

New features:

  • Initial Package Structure for Plone 6 [@jonaspiterek] #11
  • Blog and Author should be listed on Plone Navigation [@jonaspiterek] #13
  • Implement i18n support [@ericof] #17
  • Implement collective.blog.blog_info behavior [@ericof] #20
  • Disable allowing to add Author globally. Fix GS titles [@jonaspiterek] #21
  • Add index and metadata for blog post and blog author, Add test for blog author [@jonaspiterek] #28
  • Implement collective.blog: Add Author, collective.blog: Add Blog, collective.blog: Add Post permissions [@ericof] #30
  • Create folder authors inside a blog [@jonaspiterek] #32

Documentation:

  • Improve README.md [@ericof] #15

1.0a1 (2016-02-14)

  • Initial release. [@pcdummy]

Metadata

Release files for collective.blog 1.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for collective.blog 1.0.1
File Size Uploaded
collective_blog-1.0.1.tar.gz 54.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for collective.blog 1.0.1
File Interpreter ABI Platform
collective.blog-1.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 107.0 kB

Release files / collective_blog-1.0.1.tar.gz

Download URL collective_blog-1.0.1.tar.gz
Size 54.9 kB
Tags Source
SHA-256 checksum
How to use checksums
3ce0d104dab547803fbd9a0b039e3be11e23c5b32d2de676f24e473ebaa853bc
BLAKE2b-256 checksum
How to use checksums
3ce20c71acec5d3854737eb95976f86a027e7d33c15c64c326a33d4ab3bc625e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.8.18

Release files / collective.blog-1.0.1-py3-none-any.whl

Download URL collective.blog-1.0.1-py3-none-any.whl
Size 52.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2684c69430b6653b3dad6b499c6cae479b41c290f4764b77e9e2dbd4789fa910
BLAKE2b-256 checksum
How to use checksums
05479f27b56160f093adfe4fb3f2b8b76600c97946577f11e09f13483677dad7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.8.18
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page