Skip to main content

A Blog-Addon for Plone.

Project description

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]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

collective_blog-1.0.1.tar.gz (54.9 kB view details)

Uploaded Source

Built Distribution

collective.blog-1.0.1-py3-none-any.whl (52.0 kB view details)

Uploaded Python 3

File details

Details for the file collective_blog-1.0.1.tar.gz.

File metadata

  • Download URL: collective_blog-1.0.1.tar.gz
  • Upload date:
  • Size: 54.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.18

File hashes

Hashes for collective_blog-1.0.1.tar.gz
Algorithm Hash digest
SHA256 3ce0d104dab547803fbd9a0b039e3be11e23c5b32d2de676f24e473ebaa853bc
MD5 7ea85a091d5b1d4277af1f41e0f33368
BLAKE2b-256 3ce20c71acec5d3854737eb95976f86a027e7d33c15c64c326a33d4ab3bc625e

See more details on using hashes here.

File details

Details for the file collective.blog-1.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for collective.blog-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 2684c69430b6653b3dad6b499c6cae479b41c290f4764b77e9e2dbd4789fa910
MD5 a501e076c182627317761c2941dc2824
BLAKE2b-256 05479f27b56160f093adfe4fb3f2b8b76600c97946577f11e09f13483677dad7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page