An open API service indexing awesome lists of open source software.

https://github.com/collective/volto-bookmarks

Save favorites / bookmarks of pages and parameterised pages, like search urls of faceted navigation.
https://github.com/collective/volto-bookmarks

volto volto-addon

Last synced: 3 months ago
JSON representation

Save favorites / bookmarks of pages and parameterised pages, like search urls of faceted navigation.

Awesome Lists containing this project

README

        

# volto-bookmarks

volto-bookmarks

[Plone (Volto)](https://github.com/plone/volto) add-on

## Features

Add and manage bookmarks of pages and search and searchkit queries.

Bookmarks are grouped by the value of a selectable content type field.

![Bookmark Image](https://github.com/collective/volto-bookmarks/blob/main/public/bookmarks_somewhereelse.png)

## Getting started

There are two options:

- Buttons in toolbar
- Buttons somewhere else

## Installation

- Provide the necessary REST API endpoints for your Plone backend by installing [collective.bookmarks](https://github.com/collective/collective.bookmarks.git)

- Remember to install souper in Plone backend control panel.

- Install this Plone (Volto) add-on `@plone-collective/volto-bookmarks`. See [Volto docs](https://6.docs.plone.org/volto/addons/index.html#configuring-a-volto-project-to-use-an-add-on) for instructions.

## Integration of the two bookmark buttons

### Option 1 - buttons in toolbar

> This requires Volto >= 16.10.0 with a pluggable toolbar.

Include bookmarking in your Volto project by integrating the component `Bookmarking`.
This component adds two buttons to the toolbar:
one for toggling the bookmark of the current page and
one for displaying a menu with a list of bookmarks.

`config.js`:

```js
import { Bookmarking } from '@plone-collective/volto-bookmarks/components';

import '@plone/volto/config';

export default function applyConfig(config) {
config.settings.appExtras = [
...config.settings.appExtras,
{
match: '/',
component: Bookmarking,
},
];
return config;
}
```

### Option 2 - buttons not in toolbar, but somewhere else

Add the two buttons to components of your choice:

```jsx
import { ShowBookmarksContentButton } from '@plone-collective/volto-bookmarks/components';

```

```jsx
import { ToggleBookmarkButton } from '@plone-collective/volto-bookmarks/components';

```

### Further configuration for both options

Add a mapping for bookmark groups labels and the name of the field for grouping bookmarks list.

```js
config.settings.bookmarks = {
...config.settings.bookmarks,
bookmarkgroupmapping: {
manual: 'Manuals and HowTos',
releasenote: 'Release Notes',
search: 'Search', // id of search page
'search-in-news': 'Search in News', // id of another search page
default_nogroup: 'Miscellaneous',
},
bookmarkgroupfield: 'type_title',
};
```

Add a mapping for search filters:

```js
config.settings.bookmarks.filtermapping = {
facet_fields: {
'News Item': 'Nachricht',
Document: 'Seite',
Event: 'Veranstaltung',
},
search_sections: {
others: 'Website',
nachrichten: 'Nachrichten',
},
};
```

volto-bookmarks

## Copyright and License

Author Katja Süss, Rohberg, @ksuess
https://www.rohberg.ch

Copyright (c) 2023 Plone Foundation

See [LICENSE.md](https://github.com/collective/volto-bookmarks/blob/master/LICENSE.md) for details.