=== Aumcreate === Contributors: aumcreate Requires at least: 6.2 Tested up to: 7.1 Requires PHP: 7.4 License: GNU General Public License v2 or later License URI: https://www.gnu.org/licenses/gpl-2.0.html Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments A theme built around the Aumframe visual editor: you design templates, and each template draws every page it matches. == Description == Aumcreate is the front end for designs made in the Aumframe editor. You do not lay out pages one at a time — you design a **template**, give it a rule (the front page, every post in a category, single products, search results, 404), and every page that matches is drawn by that one design. What the theme itself brings: * A day/night palette with a toggle, where both modes are checked for contrast rather than guessed * Site-wide design settings — colours, fonts, container width, logos — that designs read from, so a palette change moves the whole site * No CSS framework and no jQuery on the front end; the only styles are the ones your design compiled to * Menus, widgets, featured images, comments and translation support, all in their usual WordPress places = Aumframe is required for the editor = The theme renders designs; **Aumframe** creates them. Without the plugin the theme still works as an ordinary theme, but there is nothing to design with. Install Aumframe from the Plugins screen. = Optional engines = * **WooCommerce** — shops * **AumNexCart** — a product catalogue with enquiries instead of a checkout * **AumReserva** — appointment booking * **AumViso** — structured data and AI-readable summaries Each is optional. The theme notices which one is active and offers the matching design surfaces; with none of them it is a content site. == Installation == 1. Appearance > Themes > Add New > Upload Theme, or upload the folder to `/wp-content/themes/` 2. Activate it 3. Install and activate the **Aumframe** plugin when prompted 4. Open **AumCreate** in the admin menu to set your palette, fonts and logos == Frequently Asked Questions == = Does it work without Aumframe? = Yes, as a plain theme — your posts and pages render, menus and widgets work. What you do not get is the template designer, which is the reason to use this theme. = Can I still use the block editor? = Yes. On a page that a design draws, the block editor still opens and still stores your content; the design decides where that content appears. Pages no design matches are rendered the ordinary way. = Does it send anything to your servers? = No. The theme makes no requests to aumcreate.com. The one place it looks outward is the plugins screen in its own settings, which asks wordpress.org — through WordPress's own API — whether our free plugins are installed. = Where do the colours come from? = From the theme's settings, as a small set of named tokens (brand, ink, paper, accent…) with a light and a dark value each. Designs refer to the names, so changing a token changes every design that uses it. == Notes for reviewers == Three Theme Check warnings are left in deliberately. Each is a case where the change that would clear the warning would make the theme worse, so the reasoning is written down here instead. 1. **File write operations — `inc/catalog/adapters/woo-kit.php`.** The three files written are WooCommerce's own download-protection files (`index.html` and `.htaccess`) inside `woocommerce_uploads/`. They are created when WooCommerce installs; the theme only writes one if it is missing, which happens on sites where that install step never ran. Not writing them would clear the warning and leave the uploads folder listable, so the write stays. 2. **File read operations — `inc/admin/class-kit-package.php`.** The `readfile()` call streams a generated ZIP to the browser as a download, immediately after the `Content-Disposition` header. Replacing it with `file_get_contents()` would satisfy the check by loading the whole archive into memory first, which is what `readfile()` exists to avoid. 3. **More than one text domain — `aumcreate` and `woocommerce`.** Every string that uses the `woocommerce` domain is inside a WooCommerce template override under `woocommerce/`, and they are WooCommerce's own strings ("Product", "Price", "Quantity", "Your order", "Coupon code" and so on). Giving them the theme's domain would drop WooCommerce's existing translations for a checkout page that is already translated into dozens of languages. The theme's own strings all use `aumcreate`. The `role="search"` warning that earlier versions carried is gone as of 2.20.0: the form markup now lives in `searchform.php`, so it goes through core's `get_search_form()` and its filters. == Changelog == = 2.20.1 = * The changelog entries for 2.10.1 through 2.17.0 are now in English, like the rest of this file. = 2.20.0 = * **The search form now goes through WordPress's own `get_search_form()`.** Its markup moved into `searchform.php`, which means plugins that filter the search form — multilingual plugins and search enhancers — can now reach it. The form itself is unchanged: the type dropdown still comes from the theme's own settings, and each form on a page still gets its own id. = 2.19.0 = * **Removed the cookie consent banner.** Consent management is plugin territory: it is not design or presentation, it writes a cookie, and it decides whether other scripts are allowed to run. Keeping it in the theme also meant the banner — and the GDPR correctness it implies — disappeared the moment a site changed theme. * **If you had the banner switched on, it is gone after this update and your site shows no cookie notice.** Install a dedicated consent plugin. Your saved banner settings are **not deleted**: the title, description, button labels, style and policy links are all still in the database, so you can copy the wording across. * Aumframe's deferred embeds (maps, video) wait for a generic `aumframe:consent` browser event rather than for this theme's banner, so any consent plugin that fires that event unblocks them. * Post view counts in the archive list now read through Aumframe rather than the stored meta value directly. With Aumframe's post views switched off, the list shows 0 instead of a count that had quietly stopped moving — previously the list and the plugin disagreed on the same site. = 2.18.0 = * **Removed the analytics and marketing script boxes.** Pasting tracking code into a theme is plugin territory — wordpress.org lists "analytics or tracking support" first among the examples — and a theme is the wrong place for it in practice too: switch theme and the tracking silently stops. Use an analytics plugin instead. The cookie banner itself is unchanged. * **Post views moved to Aumframe 1.28.0**, where it is off until you switch it on. Counts already recorded are not deleted. Templates that show a view count keep working through the plugin. * Likes, favourites and follows now read through Aumframe rather than querying its table directly. No change in what you see; the theme simply no longer reaches into another product's data. * Accepting cookies now also releases any embedded maps or videos waiting for consent on the same page, instead of asking a second time for each one. = 2.17.0 = * Added the classes WordPress core emits but a theme has to style: `.alignleft`, `.alignright`, `.aligncenter`, `.wp-caption`, `.wp-caption-text`, `.sticky` and `.bypostauthor`. None of them existed anywhere in the theme's 3,020 lines of CSS before this, so aligning an image in the editor changed nothing on the page. * Added `add_theme_support()` for `html5`, `responsive-embeds` and `align-wide`. * **Comments are rendered on the server first, with AJAX taking over afterwards.** Until now they were fetched entirely by JavaScript: with scripts off there were no comments at all, and search engines never saw them. Comment pagination was added at the same time. = 2.16.0 = * The product catalogue layer — the catalogue abstraction and its four engine adapters plus the AumViso bridge, 1,434 lines — moved into Aumframe. The presentation layer and kit seeding for WooCommerce, AumReserva and AumNexCart stay in the theme (1,550 lines). The line was drawn on a measurement rather than a judgement: what moved calls theme functions zero times, what stayed calls them sixteen times. * Requires Aumframe 1.20.0. = 2.15.0 = * Likes and favourites — storage, AJAX and button markup — moved into Aumframe, so they now work under any theme. Author following stays in the theme: it shares the same table, but its only interface is `author.php`, which is the theme's own. * Removed three dead AJAX endpoints that duplicated the three the front end actually uses. They had no callers at all outside their own registration. * Requires Aumframe 1.19.0. = 2.14.0 = * The content model — custom types, taxonomies and fields, 2,950 lines — moved into Aumframe. Until now a kit's content model could only be imported or exported with this theme active, and nothing said so when it was not. * Requires Aumframe 1.18.0. = 2.13.0 = * The forms system (1,592 lines plus 32 KB of assets) moved into Aumframe in full, not merely its registration. `[aum_form]` now works under any theme. * Requires Aumframe 1.17.0. = 2.12.0 = * The admin menu is a top-level menu again. Moving it under Appearance in 2.11.0 was done for the wrong reason: wordpress.org does allow a theme one top-level menu. The requirement is a set of limits — one menu only, three or fewer sub-pages recommended, `$position` either `null` or 59, and not combined with `add_theme_page()` — not a prohibition. The old menu broke two of them (`$position` was 20 and there were four sub-pages); it now uses position 59 and three sub-pages. * Companion plugins are unaffected: they ask `aumcreate_admin_parent_slug()` rather than hard-code the slug. = 2.11.1 = * Removed a bundled plugin-activation library — 3,853 lines and 126 KB that nothing in the theme ever required. It was also the source of the second text domain Theme Check reported and of two filesystem notices. * Fixed eight strings in `search.php` that carried the wrong text domain. They had never been translated on any site, which makes this more than a warning. * Removed a filter that hid the admin bar. wordpress.org does not allow a theme to do that — it is each user's own setting in their profile. Only logged-in users ever saw it, so nothing changes for visitors. * `style.css` header: `Tested up to` is a bare version number, and the `custom-logo` and `custom-background` tags were removed because the theme does not implement them. A tag must not claim a feature that is not there. * Added `searchform.php` so the theme's search form goes through core's `get_search_form()`, which is what multilingual and search plugins hook into. (It did not remove the `role="search"` warning — that check greps for the string, and the markup still lived in a helper file. See 2.20.0, where the markup moved.) = 2.11.0 = * The theme's admin screens moved from a top-level menu into Appearance. * **Companion plugins needed a one-line change.** AumViso, AumLang and AumNexCart attached their settings pages to the old top-level slug; once it was no longer top-level their pages would have disappeared from the admin with no error. They now ask the theme for the current parent slug and fall back to the old one, so they keep working on older theme versions too. The theme shows a notice naming any page that failed to attach. = 2.10.1 = * The check for whether a request is behind WooCommerce's coming-soon gate no longer reaches into WooCommerce's internal namespace or re-implement its rules. It reads the public signal WooCommerce emits instead — just as precise, and it will not fail silently when WooCommerce changes internally. Client preview links are still handled in the theme, because WooCommerce evaluates its own private links after that point. * Requires Aumframe 1.15.1. = 2.10.0 = * The head tags this theme stripped on a WooCommerce "coming soon" page are now stripped by the Aumframe plugin instead, and the theme just tells it when a page is screened. Behaviour is unchanged. **Needs Aumframe 1.15.0 or newer**; on an older one those tags come back on screened pages, which means the page's metadata names the content it is hiding. = 2.9.0 = * The last four shortcodes this theme registered — the cart link, the product action button, and the like and favourite buttons — are now registered by the Aumframe plugin. Everything behind them is unchanged and still lives here. **Needs Aumframe 1.14.0 or newer.** * Removed `[aum_comments_section]`. It was registered but never implemented: using it printed the shortcode text onto the page. No template has ever used it. = 2.8.0 = * Removed the stand-in handlers the theme registered for AumViso's shortcodes. Aumframe now does the same thing for any of our shortcodes whose plugin is missing, without a list of names to keep up to date. **Needs Aumframe 1.13.0 or newer.** = 2.7.0 = * The post types and taxonomies your template defines are now registered by the Aumframe plugin instead of the theme, through the same channel added in 2.6.0. Nothing about them changes — same names, same slugs, same labels, same archives — and your content is untouched. Custom fields are still registered here. **Needs Aumframe 1.12.0 or newer**; on an older one those types do not exist, so their admin screens and archive pages are gone until it is updated. = 2.6.0 = * The `[aum_form]` shortcode and the `aum_form` post type are now registered by the Aumframe plugin. Your forms, fields, entries and settings are untouched and still live here — only the two registration calls moved. **Needs Aumframe 1.12.0 or newer**; on an older one the Forms screen disappears, because nothing registers the post type. = 2.5.0 = * The `[aum_search]` shortcode is now registered by the Aumframe plugin. The form itself is unchanged and still comes from this theme — same markup, same dropdown, same script. **Needs Aumframe 1.11.0 or newer.** = 2.4.0 = * Removed the "Clean Up <head>" performance switch. It stripped legacy tags (RSD, Windows Live Writer manifest, shortlink, adjacent-post links, the WordPress version tag) — things wordpress.org considers a plugin's job, not a theme's. It was off by default. If you had it on, those tags come back; a head-cleanup or SEO plugin does the same thing. * "Disable Embed Scripts" no longer removes the two oEmbed discovery links from the document head, for the same reason. It still does what its description says: no `wp-embed.min.js`, and other sites cannot embed your content. = 2.3.0 = * The day/night switch is now rendered by the Aumframe plugin instead of the theme. The setting that turns it on stays here, and the button is the same button. **Needs Aumframe 1.10.0 or newer.** = 2.2.1 = * The audio-field player is now provided by the Aumframe plugin instead of the theme. **Needs Aumframe 1.9.1 or newer.** = 2.2.0 = * Pagination on archive pages is now provided by the Aumframe plugin instead of the theme. It looks and behaves exactly as before — the theme still styles it — but **this release needs Aumframe 1.9.0 or newer**. On an older Aumframe the settings screen says so, and archive pages would show `[aum_pagination]` as text until it is updated. = 2.1.0 = * The theme no longer updates itself. Updates now come from wordpress.org, the same place as every other theme on your Themes screen. * Removed the licence check. It did more than show a notice: until a site was verified, the settings screen forced you onto the licence tab and greyed out every other one — so a site could not reach its own settings. All tabs are always available now. * The "Your template" panel no longer asks our server whether a newer version of your template kit exists. It still shows which kit you have and when it was imported. * Added this readme, and a feed link in the document head. = 2.0.77 and earlier = * These releases predate this readme. Rather than reconstruct their notes from memory they are left unlisted.