{"id":290397,"date":"2026-04-07T08:28:00","date_gmt":"2026-04-07T08:28:00","guid":{"rendered":"https:\/\/en-gb.wordpress.org\/plugins\/archticframe\/"},"modified":"2026-04-07T08:28:24","modified_gmt":"2026-04-07T08:28:24","slug":"archticframe","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/archticframe\/","author":23465853,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"6.9.4","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"ArchticFrame","header_author":"archtic","header_description":"Assign archive posts to custom post types and load Archtic templates.","assets_banners_color":"9ca4af","last_updated":"2026-04-07 08:28:24","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/profiles.wordpress.org\/archtic\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":17,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"archtic","date":"2026-04-07 08:28:24"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3500655,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3500655,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3500655,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3500655,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3500794,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3500794,"resolution":"2","location":"assets","locale":""},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3500794,"resolution":"3","location":"assets","locale":""},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3500794,"resolution":"4","location":"assets","locale":""}},"screenshots":[],"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[2211,1445,8346,1487,148076],"plugin_category":[59],"plugin_contributors":[259611],"plugin_business_model":[],"class_list":["post-290397","plugin","type-plugin","status-publish","hentry","plugin_tags-acf","plugin_tags-archive","plugin_tags-archive-page","plugin_tags-custom-post-types","plugin_tags-gutenberg","plugin_category-utilities-and-tools","plugin_contributors-archtic","plugin_committers-archtic"],"banners":{"banner":"https:\/\/ps.w.org\/archticframe\/assets\/banner-772x250.png?rev=3500655","banner_2x":"https:\/\/ps.w.org\/archticframe\/assets\/banner-1544x500.png?rev=3500655","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/archticframe\/assets\/icon-128x128.png?rev=3500655","icon_2x":"https:\/\/ps.w.org\/archticframe\/assets\/icon-256x256.png?rev=3500655","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/archticframe\/assets\/screenshot-1.png?rev=3500794","caption":""},{"src":"https:\/\/ps.w.org\/archticframe\/assets\/screenshot-2.png?rev=3500794","caption":""},{"src":"https:\/\/ps.w.org\/archticframe\/assets\/screenshot-3.png?rev=3500794","caption":""},{"src":"https:\/\/ps.w.org\/archticframe\/assets\/screenshot-4.png?rev=3500794","caption":""}],"raw_content":"<!--section=description-->\n<p>ArchticFrame provides a structured way to build content-managed archive pages for custom post types.<\/p>\n\n<p>Normally, WordPress archive pages are controlled entirely by theme templates.\nThis makes it difficult for editors to manage archive content or layouts without modifying theme files.<\/p>\n\n<p>ArchticFrame solves this by introducing Archive Pages.<\/p>\n\n<p>An Archive Page is an internal content object that represents the archive content for a custom post type.\nEditors can build archive layouts using:<\/p>\n\n<ul>\n<li>Gutenberg blocks<\/li>\n<li>Advanced Custom Fields (ACF)<\/li>\n<li>custom metadata<\/li>\n<li>reusable blocks<\/li>\n<\/ul>\n\n<p>These Archive Pages are automatically linked to their corresponding custom post type archives.<\/p>\n\n<p>The archive content can then be rendered within archive templates using simple helper functions.<\/p>\n\n<p>Archive Pages behave like editable landing page content while still allowing the archive to display its normal post listings.<\/p>\n\n<h3>Key Concepts<\/h3>\n\n<p>ArchticFrame introduces a dedicated internal post type:<\/p>\n\n<p>Archive Pages<\/p>\n\n<p>Each Archive Page represents the content for a specific custom post type archive.<\/p>\n\n<p>Examples:<\/p>\n\n<ul>\n<li>Projects \u2192 Archive Page<\/li>\n<li>Services \u2192 Archive Page<\/li>\n<li>Events \u2192 Archive Page<\/li>\n<\/ul>\n\n<p>Archive Pages are automatically managed by the plugin and are intended to act as content sources for archive layouts.<\/p>\n\n<h3>Features<\/h3>\n\n<ul>\n<li>Dedicated Archive Page for each enabled custom post type<\/li>\n<li>Gutenberg block support for archive layouts<\/li>\n<li>Compatible with Advanced Custom Fields (ACF)<\/li>\n<li>Automatic archive page creation and management<\/li>\n<li>Archive Pages stored in a dedicated admin section<\/li>\n<li>Automatic linking between Archive Pages and post type archives<\/li>\n<li>Template override support for themes<\/li>\n<li>Simple helper functions for theme developers<\/li>\n<\/ul>\n\n<h3>How It Works<\/h3>\n\n<ol>\n<li>Activate the plugin<\/li>\n<li>Navigate to Archive Pages \u2192 Settings<\/li>\n<li>Enable archive management for a custom post type<\/li>\n<li>ArchticFrame automatically creates an Archive Page<\/li>\n<li>Edit the Archive Page using Gutenberg or ACF<\/li>\n<li>Render the archive content inside your archive template<\/li>\n<\/ol>\n\n<p>The archive content can be placed above the post listing or anywhere within your archive layout.<\/p>\n\n<h3>Archive Pages Admin<\/h3>\n\n<p>ArchticFrame adds a new admin section:<\/p>\n\n<p>Archive Pages<\/p>\n\n<p>This section lists all Archive Pages managed by the plugin.<\/p>\n\n<p>Each Archive Page corresponds to a specific custom post type archive.<\/p>\n\n<p>Archive Pages include a View Archive link which opens the actual archive URL.<\/p>\n\n<p>Editors only manage the content of these pages \u2014 the archive relationships are handled automatically.<\/p>\n\n<h3>Template Loading<\/h3>\n\n<p>When archive management is enabled for a custom post type, ArchticFrame attempts to load templates in the following order:<\/p>\n\n<ol>\n<li>archtic-{post_type}.php in the active theme<\/li>\n<li>archtic.php in the active theme<\/li>\n<li>the plugin fallback template<\/li>\n<\/ol>\n\n<p>Examples:<\/p>\n\n<p>archtic-projects.php\narchtic-services.php\narchtic.php<\/p>\n\n<p>This allows theme developers to fully customise archive layouts while maintaining a safe fallback.<\/p>\n\n<h3>Content Sanitization<\/h3>\n\n<p>The plugin fallback template outputs archive content using standard WordPress sanitization.<\/p>\n\n<p>This helps provide a safe default, but some custom markup may be altered or removed depending on how it is rendered. This can affect advanced custom HTML added through blocks, ACF output, or inline markup.<\/p>\n\n<p>If you need full control over archive output, you can override the fallback template using archtic.php or archtic-{post_type}.php in your theme.<\/p>\n\n<p>In cases where specific markup needs to be allowed, developers can also extend the permitted HTML using standard WordPress filters such as wp_kses_allowed_html.<\/p>\n\n<h3>Helper Functions<\/h3>\n\n<p>ArchticFrame provides helper functions for theme developers.<\/p>\n\n<p>Output archive content:<\/p>\n\n\n\n<p>Get the archive object ID:<\/p>\n\n<p>$post_id = archticframe_id();<\/p>\n\n<p>Get the archive title:<\/p>\n\n<p>echo archticframe_title();<\/p>\n\n<p>Retrieve an ACF field from the archive:<\/p>\n\n<p>echo archticframe_field('subtitle');<\/p>\n\n<p>These helpers allow themes to integrate archive content without directly querying the archive object.<\/p>\n\n<h3>Archive Listings Shortcode<\/h3>\n\n<p>ArchticFrame includes a shortcode that allows archive listings to be displayed directly inside Archive Pages.<\/p>\n\n<p>This allows editors to build custom archive layouts using Gutenberg blocks while still displaying the posts from the archive.<\/p>\n\n<p>The shortcode automatically detects the current archive post type when used inside an ArchticFrame Archive Page.<\/p>\n\n<h4>Basic Usage<\/h4>\n\n<p>[archtic_listing]<\/p>\n\n<p>This will output the archive posts for the current custom post type.<\/p>\n\n<h4>Shortcode Attributes<\/h4>\n\n<p>posts_per_page<\/p>\n\n<p>Controls how many posts are displayed.<\/p>\n\n<p>Default: 12<\/p>\n\n<p>Example:<\/p>\n\n<p>[archtic_listing posts_per_page=\"6\"]<\/p>\n\n<p>show<\/p>\n\n<p>Controls which elements appear for each listing item.<\/p>\n\n<p>Available options:<\/p>\n\n<ul>\n<li>image<\/li>\n<li>title<\/li>\n<li>excerpt<\/li>\n<li>content<\/li>\n<li>button<\/li>\n<\/ul>\n\n<p>Default:<\/p>\n\n<p>image,title,excerpt,button<\/p>\n\n<p>Example:<\/p>\n\n<p>[archtic_listing show=\"image,title,button\"]<\/p>\n\n<p>button_text<\/p>\n\n<p>Changes the label used for the button when the button option is enabled.<\/p>\n\n<p>Default:<\/p>\n\n<p>Read more<\/p>\n\n<p>Example:<\/p>\n\n<p>[archtic_listing button_text=\"View project\"]<\/p>\n\n<p>link<\/p>\n\n<p>Controls how items link to their individual posts.<\/p>\n\n<p>Available values:<\/p>\n\n<ul>\n<li>button \u2013 only the button links to the post<\/li>\n<li>card \u2013 the entire item card is clickable<\/li>\n<li>both \u2013 card and button both link to the post<\/li>\n<li>none \u2013 no links are generated<\/li>\n<\/ul>\n\n<p>Default:<\/p>\n\n<p>button<\/p>\n\n<p>Example:<\/p>\n\n<p>[archtic_listing link=\"card\"]<\/p>\n\n<h4>HTML Structure<\/h4>\n\n<p>The shortcode outputs the following structure to allow flexible styling:<\/p>\n\n\n  \n    \n      \n        \n        \n      \n    \n  \n\n\n<p>Themes can style the archive listings using the following classes:<\/p>\n\n<ul>\n<li>.archtic-listings<\/li>\n<li>.archtic-wrap<\/li>\n<li>.archtic-grid<\/li>\n<li>.archtic-col<\/li>\n<li>.archtic-item<\/li>\n<li>.archtic-item__image<\/li>\n<li>.archtic-item__title<\/li>\n<li>.archtic-item__excerpt<\/li>\n<li>.archtic-item__content<\/li>\n<li>.archtic-item__actions<\/li>\n<li>.archtic-item__button<\/li>\n<\/ul>\n\n<h3>License<\/h3>\n\n<p>This plugin is licensed under the GPLv2 or later.<\/p>\n\n<p>See: https:\/\/www.gnu.org\/licenses\/gpl-2.0.html<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder to \/wp-content\/plugins\/.<\/li>\n<li>Activate the plugin through the Plugins screen.<\/li>\n<li>Navigate to Archive Pages \u2192 Settings.<\/li>\n<li>Enable archive management for the desired custom post types.<\/li>\n<li>Edit the generated Archive Page and add archive content.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20replace%20archive%20templates%3F\"><h3>Does this replace archive templates?<\/h3><\/dt>\n<dd><p>No.\nThemes still control archive layout.\nArchticFrame simply provides editable archive content.<\/p><\/dd>\n<dt id=\"can%20i%20use%20advanced%20custom%20fields%3F\"><h3>Can I use Advanced Custom Fields?<\/h3><\/dt>\n<dd><p>Yes.\nACF fields can be added to Archive Pages and retrieved using helper functions.<\/p><\/dd>\n<dt id=\"can%20i%20customise%20archive%20templates%3F\"><h3>Can I customise archive templates?<\/h3><\/dt>\n<dd><p>Yes.\nThemes can provide custom templates such as archtic-{post_type}.php or archtic.php.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20archive%20management%20is%20disabled%3F\"><h3>What happens if archive management is disabled?<\/h3><\/dt>\n<dd><p>The corresponding Archive Page will automatically be moved to the trash.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>Archive Pages system<\/li>\n<li>Gutenberg archive content support<\/li>\n<li>ACF helper integration<\/li>\n<li>Template override support<\/li>\n<li>Helper functions for archive content<\/li>\n<\/ul>","raw_excerpt":"Create editable archive pages for custom post types using Gutenberg blocks or ACF.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/290397","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=290397"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/archtic"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=290397"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=290397"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=290397"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=290397"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=290397"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=290397"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}