* docs: Add onboarding documentation for new developers Add four comprehensive guides to help new developers get started with the VDI-Starter-v5 WordPress theme: - docs/getting-started.md: Setup from zero, local WordPress options, env config, theme activation warnings, troubleshooting - docs/architecture.md: Bootstrap flow, 7 architectural layers, namespace conventions, WP hooks cleanup, enqueue system, theme.json - docs/creating-blocks.md: Step-by-step ACF block creation tutorial, helper functions, parent-child patterns, Tailwind integration - docs/reference.md: Hooks/filters tables, design tokens, CSS import tree, JS module graph, class reference, CLI commands, deployment Update README.md: trim deep-dive API docs (moved to reference), add documentation links section, fix CSS paths (views/styles/ → styles/), add missing contact-info block, fix deployment filename typo (wpengine,yml → wpengine.yml), add backToTop.js and enqEditorAssets(), add namespace conventions table. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * docs: language graph * docs: Update readme * 🔵 other: Rename project and publish * 🔵 other: Update .gitignore
60 lines
1.3 KiB
PHP
60 lines
1.3 KiB
PHP
<?php
|
|
/**
|
|
* ACF (Advanced Custom Fields) support class & functions
|
|
*
|
|
* @package SoloFrameEvo
|
|
* @since 1.0.0
|
|
*/
|
|
|
|
namespace SoloFrameEvo;
|
|
|
|
/**
|
|
* Class ACF
|
|
*
|
|
* This class serves as a wrapper or utility for handling Advanced Custom Fields (ACF) functionality.
|
|
* It is part of the Basic-WP project and is located in the `lib` directory.
|
|
*
|
|
* @package Basic-WP
|
|
*/
|
|
class ACF {
|
|
/**
|
|
* Variable to hold the file path.
|
|
*
|
|
* @var string $path The file path associated with the class.
|
|
*/
|
|
public $path;
|
|
|
|
/** Constructor.
|
|
*
|
|
* This constructor initializes the class by setting the file path and
|
|
* adding filters for loading and saving JSON files related to ACF.
|
|
*/
|
|
public function __construct() {
|
|
$this->path = get_stylesheet_directory() . '/acf';
|
|
add_filter( 'acf/settings/load_json', array( $this, 'loadJson' ) );
|
|
add_filter( 'acf/settings/save_json', array( $this, 'saveJson' ) );
|
|
}
|
|
|
|
/** Save JSON.
|
|
*
|
|
* @param mixed $path The path to save the JSON file.
|
|
*/
|
|
// phpcs:ignore
|
|
public function saveJson( $path ) {
|
|
return $this->path;
|
|
}
|
|
|
|
/** Load JSON.
|
|
*
|
|
* @param mixed $paths The paths to load the JSON file.
|
|
*/
|
|
// phpcs:ignore
|
|
public function loadJson( $paths ) {
|
|
return array( $this->path );
|
|
}
|
|
}
|
|
|
|
if ( function_exists( 'get_fields' ) ) {
|
|
$acfInstance = new ACF();
|
|
}
|