1020442c06
- reorganized /inc directory structure for improved separation of concerns - grouped files into customizer, utilities, and tools - improved naming consistency across files (e.g. *-settings, template-tags, etc.) - simplified functions.php includes for better readability and maintainability - refactored Customizer structure - extracted image optimizer settings from core-settings into dedicated module - consolidated settings, UI logic, and styles into a single feature file - improved naming consistency for hooks and functions - standardized Image Optimizer admin tool - renamed "Performance Tools" to "Image Optimizer" across UI and hooks - updated admin page registration, callback names, and menu labels - aligned AJAX nonce naming for consistency and clarity - preserved all existing logic and behavior (no functional changes) - improved overall code organization and long-term maintainability no breaking changes
59 lines
1.4 KiB
PHP
59 lines
1.4 KiB
PHP
<?php
|
|
/**
|
|
* Theme Customizer Core
|
|
*
|
|
* @package zeitfresser
|
|
*/
|
|
|
|
function zeitfresser_customize_register( $wp_customize ) {
|
|
|
|
// Live Preview support
|
|
$wp_customize->get_setting( 'blogname' )->transport = 'postMessage';
|
|
$wp_customize->get_setting( 'blogdescription' )->transport = 'postMessage';
|
|
$wp_customize->get_setting( 'header_textcolor' )->transport = 'postMessage';
|
|
|
|
if ( isset( $wp_customize->selective_refresh ) ) {
|
|
$wp_customize->selective_refresh->add_partial(
|
|
'blogname',
|
|
array(
|
|
'selector' => '.site-title a',
|
|
'render_callback' => 'zeitfresser_customize_partial_blogname',
|
|
)
|
|
);
|
|
|
|
$wp_customize->selective_refresh->add_partial(
|
|
'blogdescription',
|
|
array(
|
|
'selector' => '.site-description',
|
|
'render_callback' => 'zeitfresser_customize_partial_blogdescription',
|
|
)
|
|
);
|
|
}
|
|
}
|
|
add_action( 'customize_register', 'zeitfresser_customize_register' );
|
|
|
|
/**
|
|
* Partial refresh helpers
|
|
*/
|
|
function zeitfresser_customize_partial_blogname() {
|
|
bloginfo( 'name' );
|
|
}
|
|
|
|
function zeitfresser_customize_partial_blogdescription() {
|
|
bloginfo( 'description' );
|
|
}
|
|
|
|
/**
|
|
* Live preview JS
|
|
*/
|
|
function zeitfresser_customize_preview_js() {
|
|
wp_enqueue_script(
|
|
'zeitfresser-customizer',
|
|
get_template_directory_uri() . '/js/customizer.js',
|
|
array( 'customize-preview' ),
|
|
ZEITFRESSER_VERSION,
|
|
true
|
|
);
|
|
}
|
|
add_action( 'customize_preview_init', 'zeitfresser_customize_preview_js' );
|