Description
When you hand off a WordPress site to a client, they often ask “where do I edit what?”. NPC Manual Generator for Advanced Custom Fields parses the field structures defined by Advanced Custom Fields (ACF) and produces an update manual that operations staff can actually read – in Markdown and PDF.
Designed for real-world handoff use, the plugin renders Repeater / Flexible Content / Group nesting, translates ACF location rules into readable text, and bundles a Japanese-capable font for PDF output, so the result is something you can ship as a deliverable.
Main features
- Read ACF local JSON (
acf-json/group_xxx.json) and field groups stored in the database - Indented rendering for nested fields (Repeater / Flexible Content / Group)
- Formatted output of field type, required flag, instructions, choices, and more
- Location rule humanization (post type, taxonomy, page templates; resolves page/post titles when reading from the database)
- Live preview in the admin screen
- Markdown download (single file and Zip bundle)
- PDF download (single file – A4 portrait, IPAex Gothic bundled, header / footer / page numbers)
- Bulk Zip download with format selection (MD / PDF / Both)
- Paired filename rename when bundling so that the MD and PDF for the same group share the same suffix
Translation
All UI strings are wrapped with __() / _e() and the text domain npc-manual-generator-for-advanced-custom-fields. A Japanese translation is bundled (languages/npc-manual-generator-for-advanced-custom-fields-ja.po). Additional languages can be contributed through translate.wordpress.org.
Roadmap
- Template feature (rebrand the manual with your studio’s logo and colors)
- Inline display in the post editor sidebar
- Sample value capture (pull one real post and show “currently entered as …”)
- Diff manuals (highlight changes since the previous output)
- Automatic screenshot insertion (capture the admin screen with a headless browser and embed in the PDF)
Links
- Official site: https://n-pc.jp/
- Developer blog: https://n-pc.jp/blog/
Author
npc – Freelance WordPress developer working with ACF since 2016. This plugin grew from in-house tools used to ship real client projects.
Third-party Licenses
This plugin bundles the following third-party software.
- mPDF (
mpdf/mpdf8.x): GPL-2.0-only. Seevendor/mpdf/mpdf/LICENSE.txt. - IPAex Gothic Font (
fonts/ipaexg.ttf): IPA Font License Agreement v1.0. Seefonts/IPA_Font_License_Agreement_v1.0.txt. Official: https://moji.or.jp/ipafont/license/
The mPDF dependencies are also bundled (all under compatible licenses):
setasign/fpdi– MITpsr/log– MITpsr/http-message– MITparagonie/random_compat– MITmyclabs/deep-copy– MITmpdf/psr-log-aware-trait– GPL-2.0-onlympdf/psr-http-message-shim– GPL-2.0-only
Screenshots

The “ACF Manual” menu added to the WordPress admin 
Field group list (database and JSON sources side by side) 
Both database-sourced and JSON-sourced field groups detected 
Markdown preview rendered in the admin 
Bulk download with format radio (MD / PDF / Both) and multi-select 
Sample PDF page (A4 portrait, header / footer, location rules) 
Repeater / Flexible Content / Group nested rendering in the PDF (vertical guide lines) 
Plugin name and version displayed in the Plugins list
Installation
Standard installation (recommended)
- From the WordPress admin, go to Plugins -> Add New -> Upload Plugin and upload the plugin Zip file.
- Activate “NPC ACF Manual Generator” from the Plugins list.
- Open “ACF Manual” in the left admin menu to start using it.
Manual upload (FTP)
- Unzip the package and upload the entire
npc-acf-manual-generator/folder (includingvendor/andfonts/) towp-content/plugins/. - Activate the plugin from Plugins.
- Open “ACF Manual” in the left admin menu.
For developers (when cloning from Git)
The vendor/ directory is excluded from version control. Install the dependencies with Composer:
composer install --no-dev --optimize-autoloader
Requirements
- PHP: 7.4 or higher
- PHP extensions:
mbstring(required),gd(required for PDF output),zip(required for bulk Zip download) - WordPress: 6.0 or higher
- ACF: 6.0 or higher recommended (used to read field groups from the database; sample JSON output works without ACF)
FAQ
-
Is ACF required?
-
No. Markdown / PDF generation from sample JSON works without ACF. ACF 6.0 or higher is recommended for reading actual field groups from the database.
-
Does it work with ACF Free?
-
The basic field types work with ACF Free. Repeater / Flexible Content require ACF Pro.
-
PDF generation says it cannot run
-
One of the following is the cause. The exact reason is shown in the admin notice.
vendor/autoload.phpis missing – runcomposer install --no-devfonts/ipaexg.ttfis missing – place IPAex Gothic (IPA Font License v1.0) underfonts/- PHP extension
gdormbstringis disabled – enable it on the server wp-content/uploads/is not writable – required to create a temporary directory
-
Can I customize the PDF design with my own brand?
-
Yes. The header comment of
includes/class-pdf-generator.phpdocuments sixapply_filters()extension points (template path, header HTML, footer HTML, mPDF config, default font, final HTML). Add filters fromfunctions.phpor your own plugin to swap logos, colors, and layout. -
Are there performance concerns on large sites?
-
The Markdown path is designed to handle 100 field groups within a few seconds. PDF generation for very large manuals (100+ pages) may require raising
WP_MEMORY_LIMITand the PHP execution time limit. -
How extensive is the location rule humanization?
-
- Post type / taxonomy / user role slugs – converted to readable labels
- Page / post conditions – the actual page title is resolved
- If the referenced post is deleted – falls back to
[deleted: ID:xxxx] - Title resolution runs only for database-sourced groups (JSON-sourced groups show the raw ID)
-
Where is the sample JSON?
-
sample-data/group_sample.json is bundled. After activating the plugin, you can try Markdown / PDF generation from this sample even without ACF installed.
-
I want to contribute a translation
-
Contributions through the WordPress.org translation platform (translate.wordpress.org) are welcome.
-
I want to use the filter hooks for white-label customization
-
See the six
apply_filters()calls described in the header comment ofincludes/class-pdf-generator.php:npc_acf_manual_pdf_template_path– swap the template file pathnpc_acf_manual_pdf_header_html– swap the header HTMLnpc_acf_manual_pdf_footer_html– swap the footer HTMLnpc_acf_manual_pdf_mpdf_config– swap the mPDF constructor argumentsnpc_acf_manual_pdf_default_font– swap the default fontnpc_acf_manual_pdf_html– swap the final HTML (last resort)
Add
add_filter()calls fromfunctions.phpor your own plugin to apply your branding. -
How do I test locally?
-
sample-data/group_sample.json works as a stand-in even when ACF is not installed. A pre-generated
sample-data/group_sample.pdfis also bundled for reference.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“NPC Manual Generator for Advanced Custom Fields” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “NPC Manual Generator for Advanced Custom Fields” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.0.0
- First public release on WordPress.org
- Plugin assets (banner and icon) added for the plugin directory page
0.3.0
- Phase 3: PDF output for production deliverables
- Bundled mPDF 8.3 via Composer (vendor/ included in the distribution)
- Bundled IPAex Gothic (with the IPA Font License v1.0 text)
- Single-file PDF download (A4 portrait, 20mm margins, header / footer, page numbers)
- Hierarchy rendered with H2 / H3 + left-border guide lines
- Bulk Zip download format radio (MD / PDF / Both)
- Paired filename rename so MD and PDF for the same group share suffixes
- Per-row download buttons reorganized as MD / PDF icon buttons
- Admin notice when mPDF or the bundled font is missing
- Six
apply_filters()extension points in PDF_Generator for white-label customization
0.2.0
- Phase 2: production-ready release
- Direct read of field groups stored in the ACF database
- Markdown download (single file and Zip bundle)
- Location rule resolution (post type / page title / taxonomy / user role)
- In-request static cache to reduce database load during bulk processing
- Same-name groups deduplicated with sequential rename in Zip
- Fallback display when ZipArchive is not available
0.1.0
- Phase 1: PoC release
- ACF JSON read, Markdown generation, admin preview
- Repeater / Flexible Content / Group nesting
- All 16 field types covered
