Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/cedaro/cpt-archives
A WordPress plugin to manage post type archive titles, descriptions, and permalink slugs from the dashboard.
https://github.com/cedaro/cpt-archives
Last synced: 3 months ago
JSON representation
A WordPress plugin to manage post type archive titles, descriptions, and permalink slugs from the dashboard.
- Host: GitHub
- URL: https://github.com/cedaro/cpt-archives
- Owner: cedaro
- Created: 2013-02-02T04:33:05.000Z (almost 12 years ago)
- Default Branch: develop
- Last Pushed: 2016-07-27T16:18:20.000Z (over 8 years ago)
- Last Synced: 2024-04-29T21:16:43.856Z (7 months ago)
- Language: PHP
- Size: 141 KB
- Stars: 44
- Watchers: 5
- Forks: 7
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# CPT Archives [![Build Status](https://travis-ci.org/cedaro/cpt-archives.png?branch=develop)](https://travis-ci.org/cedaro/cpt-archives)
A WordPress plugin to manage post type archive titles, descriptions, and permalink slugs from the dashboard.
__Contributors:__ [Brady Vercher](https://twitter.com/bradyvercher)
__Requires:__ WordPress 4.0+ & PHP 5.4+
__License:__ [GPL-2.0+](http://www.gnu.org/licenses/gpl-2.0.html)## Description
*CPT Archives* allows for editing a post type's archive properties by registering a new `cpt_archive` custom post type that's connected to the post type (that's a mind bender). In fact, since it's really nothing more than a CPT, it can be further extended with plugins to add meta boxes for customizing your archive pages in new and interesting ways. By default, archive titles, descriptions and permalinks can be managed through a familiar interface.
Another benefit is that a new "Archive" section appears on the *Appearance → Menus* screen, making it easy to add your post type archives to a menu without using a custom link. Even if your archive slug is changed, you won't have to update the URL in your menu.
![Edit Archive Screen Screenshot](screenshot-1.png)
_Example of an Edit Archive screen. The archive title, description and permalinks can all be updated._## Usage
To register archive support for an existing post type, add a quick snippet to your theme's `functions.php` file or in a custom plugin like this:
```php
add_action( 'init', function() {
add_post_type_support( 'my_post_type', 'archive' );
} );
```This automatically adds a submenu in the post type's menu that points directly to the archive edit screen. Behind the scenes, when you register support for an archive this way, a new `cpt_archive` post is created and connected to the post type, so you don't have to do anything else.
### Advanced Registration
For more control, an alternative API is available for registering archives:
```php
add_action( 'init', function() {
if ( empty( $GLOBALS['cptarchives'] ) ) {
return;
}$GLOBALS['cptarchives']->register_archive( 'my_post_type', array(
'customize_rewrites' => true,
'show_in_menu' => true,
'supports' => array( 'title', 'editor', 'thumbnail' ),
) );
} );
```Archive Registration Arguments
Argument
Description
customize_rewrites
Whether the post type's rewrites can be customized. Defaults totrue
. Acceptsfalse
,'archives'
, and'posts'
.
show_in_menu
Whether the archive should be added to the admin menu. Defaults totrue
. Also accepts a top level menu item id.
supports
A list of post type features that should be enabled on the archive edit screen.
### Post Type Archive Templates
_CPT Archives_ works with default archive template tags. Additional data for the archive post object can be retrieved using the `$cptarchives` global (be sure it exists before using it).
The `archive-my_post_type.php` template for the example CPT registered above could look something like this:
```php
', '' ); ?>
', '' ); ?>
get_archive_id() ); ?>
```
## Installation
### Upload
1. Download the [latest release](https://github.com/cedaro/cpt-archives/archive/master.zip) from GitHub.
2. Go to the _Plugins → Add New_ screen in your WordPress admin panel and click the __Upload__ button at the top next to the "Add Plugins" title.
3. Upload the zipped archive.
4. Click the __Activate Plugin__ link after installation completes.### Manual
1. Download the [latest release](https://github.com/cedaro/cpt-archives/archive/master.zip) from GitHub.
2. Unzip the archive.
3. Copy the folder to `/wp-content/plugins/`.
4. Go to the _Plugins → Installed Plugins_ screen in your WordPress admin panel and click the __Activate__ link under the _CPT Archives_ item.Read the Codex for more information about [installing plugins manually](http://codex.wordpress.org/Managing_Plugins#Manual_Plugin_Installation).
### Git
Clone this repository in `/wp-content/plugins/`:
`git clone [email protected]:cedaro/cpt-archives.git`
Then go to the _Plugins → Installed Plugins_ screen in your WordPress admin panel and click the __Activate__ link under the _CPT Archives_ item.