Do I need prior WordPress experience?
Basic WordPress knowledge is helpful, but not mandatory.
4WP.dev is designed to support progressive growth, helping developers move step by step toward deeper expertise.
Used in
80 questions answered
Answers pulled from across 4wp.dev — plugins, architectures, development, jobs, and audience guides. Powered by the 4WP FAQ registry.
Basic WordPress knowledge is helpful, but not mandatory.
4WP.dev is designed to support progressive growth, helping developers move step by step toward deeper expertise.
Used in
You can start by exploring the content, joining discussions, and following the learning paths.
4WP.dev grows through active participation and shared experience.
Used in
It’s both.
4WP.dev combines structured learning paths with a developer community focused on sharing experience, best practices, and real production knowledge.
Used in
Yes.
The platform is built for developers who want to level up professionally, understand WordPress internals, and work with production-grade solutions.
Used in
4WP.dev is a WordPress-focused platform for developers.
We bring together developers who want to build modern, scalable WordPress solutions through real-world practice, not theory.
Used in
Yes. 4WP.dev offers subcontract and direct hire for block libraries, editor UX, plugin MVPs, and production hardening. Review the plugin portfolio first, then request a conversation.
Used in
Yes — common requests include Gutenberg migration, security hardening, test coverage, REST API cleanup, and SOLID restructuring without breaking live sites.
Used in
Yes. Full Site Editing themes, reusable block patterns, theme.json design systems, and editor-only block addons for agency design systems are core strengths.
Used in
Yes. Engagements can run under your agency brand with direct technical communication, clear handoff docs, and Git-based delivery your team can maintain.
Used in
Audit open-source repos on GitHub, read architecture docs, inspect release cadence on WordPress.org, and review plugin singles on 4wp.dev — all public proof of how code is structured and shipped.
Used in
Yes. Blocks follow WordPress block APIs and work with block themes (FSE) and classic themes that support the Block Editor. They inherit your theme typography and spacing where possible.
Used in
Most 4WP plugins are open source (GPL v2+) and free to install. Some are on WordPress.org; others install from GitHub via the 4WP Bundle dashboard. There are no hidden license traps.
Used in
Yes. Plugins are designed as an ecosystem. 4WP Bundle helps manage install, activate, and update when you run several 4WP tools on one site.
Used in
No. 4WP plugins are built for the WordPress admin and Block Editor. Install from the plugin catalog, follow the setup guide on each plugin page, and configure options in wp-admin — no PHP or HTML required.
Used in
Start with the plugin documentation on 4wp.dev, then contact 4WP.dev for guided setup or a small configuration adjustment if you need hands-on help.
Used in
Yes. 4WP Bundle exposes 4wp/v1 REST endpoints; MCP Abilities connects AI agents to WordPress via the Abilities API — both with public source on GitHub.
Used in
Yes, under GPL v2+. Fork, adapt, and ship — respect the license and attribution. Many patterns (block wrappers, REST controllers, inventory tables) are reusable starting points for commercial work.
Used in
Yes — block.json, InnerBlocks, block variations, Interactivity API, block bindings, Query Loop extensions, and editor sidebar plugins appear across the suite (FAQ, Advanced Code, QL Blocks, SEO Helper, MCP Abilities).
Used in
Study plugin singles under /plugin/, clone repos, and follow guides on hooks, blocks, inner blocks, Interactivity API, and block bindings. Each plugin is a case study — not a toy demo.
Used in
Content is anchored in shipped plugins — real settings screens, edge cases, release history, and SEO/GSC workflows. You learn from code that runs in production, not isolated snippets.
Used in
Yes. Many engagements start as freelance or part-time WordPress block developer work before a longer hire. Share your GitHub, plugin contributions, and Gutenberg experience when you reach out.
Used in
Most 4WP.dev collaborations are remote-friendly. Specify timezone and availability when you contact us — whether you are applying for a role or hiring for your distributed team.
Used in
Yes — Gutenberg developer for hire covers custom blocks, inner blocks, block bindings, editor sidebar tools, and block libraries for agencies. For full agency subcontract scope, see also For Companies.
Used in
Use the Contacts popup on this page or visit Contacts. Share role scope, stack (Gutenberg, REST, WooCommerce, etc.), and timeline. Review the open-source portfolio first to see production code quality.
Used in
Coming soon: structured guides to prepare for WordPress technical interviews — Gutenberg APIs, PHP architecture, hooks, REST, testing, and how to demo a plugin from the 4WP ecosystem or your own repos.
Used in
No. Elementor is optional. The Gutenberg block and [forwp_booking] shortcode work on any block theme without page builders.
Used in
No. Clinic Cards is a third-party service by Cliniccards Corp. 4WP Booking is an independent product by 4wp.dev that communicates with Clinic Cards via their documented API.
Used in
Clinic Cards is a cloud CRM for dental clinics — interactive schedule, patient cards, visual treatment plans, finances, inventory, online booking, and eHealth integration. 4WP Booking connects your WordPress site to their public API.
Used in
When a visitor submits the booking form: name, phone, email, optional comment, selected service, date, and time. Data is sent only on submit, not during browsing.
Used in
In WordPress options on your server. The key is never included in front-end HTML or JavaScript — all API requests are server-side HTTPS calls to cliniccards.com/api.
Used in
No. Each 4WP plugin works standalone. Bundle is recommended when you run several 4WP plugins and want one dashboard, catalog sync with GitHub, and shared addon blocks in the editor.
Used in
Go to 4WP Bundle → Addons, check or uncheck each addon, and click Save. Disabled addons are not registered on init, so they disappear from the block inserter.
Used in
Download the zip from github.com/4wpdev/4wp-bundle, upload via Plugins → Add New, or use the Bundle dashboard to install sibling plugins from the catalog. Activate under Plugins.
Used in
Under 4WP Bundle → Blocks, the UI lists every installed 4wp-* plugin and compares versions against the remote plugins.json manifest from GitHub. You can install missing plugins via download URL, activate or deactivate, update when a newer release exists, and open README or documentation links.
Used in
Yes — GPL v2 or later. Source on GitHub, maintained by 4WP.dev. Not on WordPress.org yet; install from GitHub or via the ecosystem dashboard.
Used in
Yes, drafts are also scanned and shown as sources. Status is visible in the “Used in” list on FAQ Cards when sources are enabled.
Used in
List and Categories share include/exclude even when they sit in different columns. Two categories on the List → the same two in the nav. More on the nav → the List includes those too. Empty include on one side inherits the other; empty on both means all categories. All categories always shows that synced set, not a different universe of questions.
Used in
It scans all posts looking for forwp/faq wrapper. Inside, it takes Accordion items/Details blocks and extracts: question, answer, post_id, post_type, and permalink.

Used in
Complete registry setup, run a rescan, then in the Site Editor add 4WP FAQ Categories (sidebar) and 4WP FAQ List (main column). Optionally add a core Search block and turn on 4WP FAQ → Filter 4WP FAQ List. Questions stay on the real pages; the hub only reads the registry.
Used in
Add core Accordion (or item) → Click “Convert to FAQ” → Plugin wraps it in forwp/faq without changing appearance.

Used in
Not yet. Apple Health has no web OAuth flow. A future release may add an iOS bridge or third-party aggregator through the provider registry.
Used in
No. Samples are stored in your WordPress database on your server. The plugin does not phone home to 4wp.dev.
Used in
Google OAuth for authorization and the Google Fitness API for activity datasets — steps, distance, calories, and exercise sessions — only after the user consents and an admin saves valid OAuth credentials.
Used in
A WordPress plugin that lets logged-in users connect Google Health / Fitness data — with admin charts, Gutenberg metric blocks, REST endpoints, and a provider registry for future sources.
Used in
Clone or download from GitHub. Part of the 4WP Bundle ecosystem.
Used in
Yes. Choose the custom SVG option in the icon library when Lucide does not include your mark — useful for logos and client-specific assets.
Used in
Yes. Toolbar controls add icons to Button, Heading, Paragraph, List, and Quote blocks in addition to the standalone 4WP Icon block.
Used in
No. Icons render as inline SVG on the server. Visitors do not load a Lucide React runtime — keeping pages lightweight.
Used in
A Gutenberg block plugin that brings the Lucide icon set (1000+ icons) into WordPress with a searchable picker, custom SVG support, links, and inline icons for selected core blocks.
Used in
Source and releases are on GitHub. It powers iconography across 4WP.dev and ships as part of the 4WP Bundle ecosystem.
Used in
No. Templates keep base slugs like header. You create locale-specific template parts (header-en, footer-de, etc.) or map custom slugs in the admin table.
Used in
Swapping runs on the front end (and is suspended during admin/REST). Editors still manage all parts in the Site Editor; admin tabs help map, clone, and audit coverage.
Used in
Version 0.2 adds pattern language scope and filters the block pattern inserter via REST so editors see patterns relevant to the active language.
Used in
It resolves base FSE template part slugs (header, footer, and custom parts) to language-specific versions on the front end, based on the active Polylang or WPML locale.
Used in
The resolver falls back to the base slug so the site keeps working. The Design System tab highlights missing variants so you can clone them in one click.
Used in
MVP includes ICS feed export and per-item “Add to Google Calendar” links. Two-way Google OAuth sync is on the roadmap — see GOOGLE-SETUP.md in the repository for current setup notes.
Used in
No. Planning only — no automated actions. 4WP Planner helps you organize work and due dates; it does not post to WordPress, social networks, or deploy plugins on your behalf.
Used in
Not yet. Install from the GitHub repository. An official directory listing has not been submitted.
Used in
No — early-stage development. The plugin is actively evolving (currently v0.3.0). APIs, admin screens, and calendar sync may change between releases. Use on staging or internal installs until we publish a stable roadmap.
Used in
Yes — namespace fwpp/v1 with routes for projects, plans, items, calendars, insights, and meta. Useful for future dashboards or internal tooling; treat endpoints as unstable during early development.
Used in
Yes. Presets use named utility classes; arbitrary values use a has-forwp-*-custom class with a CSS variable (for example --forwp-padding-top-mobile: 150px) instead of inline styles.
Used in
No. The plugin extends blocks that already support spacing, typography, and alignment — such as Heading, Paragraph, Group, and List — via sidebar controls.
Used in
No. Output is limited to utility CSS classes and CSS variables. A single generated stylesheet handles responsive rules — no front-end script dependency.
Used in
Spacing and font-size presets are read from the active theme’s theme.json. Breakpoints can be defined in settings.custom.breakpoints; when present, they override plugin defaults and lock conflicting admin fields.
Used in
Not yet. The plugin has not been submitted to the official WordPress.org directory. Install and review the source from the GitHub repository.
Used in
A: Absolutely! WordPress hooks (add_action, add_filter) are a perfect OCP implementation using procedural code. Your functions stay closed (working code), others extend via hooks (adding functionality). OOP adds more tools, but hooks alone achieve OCP beautifully.
A: Not at all. A simple array-based container handles 95% of cases. For larger plugins, consider PHP-DI or Pimple. But starting with constructor injection and interfaces is enough.
Used in
A: No! Overriding is fine as long as the contract is preserved. You can make behavior more specific, optimize performance, or add features — but you cannot break the promises the parent made (same return types, no new exceptions, same preconditions).
Used in
A: No, SRP is about responsibility, not file count. You can have multiple related functions in one file as long as they serve the same high-level responsibility. For example, all post validation functions can live in post-validation.php, while email functions go in email-notifications.php.
A: Partially. The Hooks API is an excellent abstraction layer — plugins depend on the hook system, not on core internals. But older WordPress code uses global functions and static calls heavily.
Used in
Yes. Pass the full URL including the path to wp core install –url=. Download and config steps stay the same; only the site URL changes.
Used in
No. WordPress needs database credentials in wp-config.php before installation. Without config, WP-CLI cannot connect to MySQL and the install will fail.
Used in
Yes, and it is recommended for automated pipelines. The –minor flag restricts updates to the current major branch (e.g. 6.x → 6.x patch), skipping major version jumps.
Only when the database named in wp-config.php does not exist yet. On shared hosting the database is often pre-created — then skip this step. On local dev, create it with WP-CLI.
Used in
No. Step 4 accepts both git pull and tar -xzf. If the server has Git, pull the branch. If not, upload a tar archive via SFTP and extract it. All other steps are identical.
Used in
Yes. WP-CLI runs the .sql file against the current database, which typically begins with DROP TABLE IF EXISTS statements for each table. The result is a clean replacement of the existing data, not a merge. This is why the export step before import is critical — anything not in the backup file will not exist after the import.
Used in
Run grep 'siteurl' backup.sql | head -5 before importing. The siteurl value in the dump shows which site and domain the backup came from. If it shows a localhost or staging URL, you will need to run wp search-replace after the import to fix all domain references.
Used in
WP-CLI reads the database host, name, user, and password directly from wp-config.php. You do not need to pass credentials on the command line. This is why wp db import backup.sql works without any additional flags.
Used in
The database may be in a partially restored state. First, check the error message — it usually points to a specific table or SQL statement. If the import file is valid, try running it again (WP-CLI’s import is generally idempotent for standard WordPress dumps because each table is dropped before recreating). If the file itself is corrupted, you need an earlier backup.
Used in
wp db export is a thin wrapper around mysqldump that reads credentials from wp-config.php automatically. The resulting .sql file is compatible with wp db import and standard MySQL import tools. The main advantage over raw mysqldump is that you do not need to manually pass host, user, password, and database name on the command line.
Used in
Reach out via contacts or explore the plugin docs if you are building with 4WP FAQ yourself.