113 lines
3.4 KiB
PHP
113 lines
3.4 KiB
PHP
<?php
|
|
/**
|
|
* Functions for the Powder WordPress theme.
|
|
*
|
|
* @package Powder
|
|
* @author Brian Gardner
|
|
* @license GNU General Public License v3
|
|
* @link https://powderwp.com/
|
|
*/
|
|
|
|
if ( ! function_exists( 'powder_setup' ) ) {
|
|
|
|
/**
|
|
* Initialize theme defaults and add support for WordPress features.
|
|
*/
|
|
function powder_setup() {
|
|
|
|
// Enqueue editor stylesheet.
|
|
add_editor_style( get_template_directory_uri() . '/style.css' );
|
|
|
|
// Remove core block patterns.
|
|
remove_theme_support( 'core-block-patterns' );
|
|
|
|
// Include theme settings.
|
|
require_once get_template_directory() . '/inc/theme-settings.php';
|
|
|
|
}
|
|
}
|
|
add_action( 'after_setup_theme', 'powder_setup' );
|
|
|
|
/**
|
|
* Enqueue theme stylesheet and script.
|
|
*/
|
|
function powder_enqueue_stylesheet_script() {
|
|
|
|
// Enqueue theme stylesheet.
|
|
wp_enqueue_style( 'powder', get_template_directory_uri() . '/style.css', array(), wp_get_theme( 'powder' )->get( 'Version' ) );
|
|
|
|
}
|
|
add_action( 'wp_enqueue_scripts', 'powder_enqueue_stylesheet_script' );
|
|
|
|
/**
|
|
* Register block styles.
|
|
*/
|
|
function powder_register_block_styles() {
|
|
|
|
$block_styles = array(
|
|
'core/columns' => array(
|
|
'column-reverse' => __( 'Reverse', 'powder' ),
|
|
),
|
|
'core/cover' => array(
|
|
'gradient' => __( 'Gradient', 'powder' ),
|
|
),
|
|
'core/group' => array(
|
|
'shadow-light' => __( 'Shadow', 'powder' ),
|
|
),
|
|
'core/list' => array(
|
|
'no-style' => __( 'No Style', 'powder' ),
|
|
),
|
|
'core/social-links' => array(
|
|
'outline' => __( 'Outline', 'powder' ),
|
|
),
|
|
);
|
|
|
|
foreach ( $block_styles as $block => $styles ) {
|
|
foreach ( $styles as $style_name => $style_label ) {
|
|
register_block_style(
|
|
$block,
|
|
array(
|
|
'name' => $style_name,
|
|
'label' => $style_label,
|
|
)
|
|
);
|
|
}
|
|
}
|
|
|
|
}
|
|
add_action( 'init', 'powder_register_block_styles' );
|
|
|
|
/**
|
|
* Register pattern category.
|
|
*/
|
|
function powder_register_pattern_category( $slug, $label, $description ) {
|
|
register_block_pattern_category(
|
|
'powder-' . $slug,
|
|
array(
|
|
'label' => __( $label, 'powder' ),
|
|
'description' => __( $description, 'powder' ),
|
|
)
|
|
);
|
|
}
|
|
|
|
/**
|
|
* Register pattern categories.
|
|
*/
|
|
function powder_register_pattern_categories() {
|
|
$categories = array(
|
|
'call-to-action' => array( __( 'Call to Action', 'powder' ), __( 'A collection of call to action patterns for Powder.', 'powder' ) ),
|
|
'content' => array( __( 'Content', 'powder' ), __( 'A collection of content patterns for Powder.', 'powder' ) ),
|
|
'gallery' => array( __( 'Gallery', 'powder' ), __( 'A collection of gallery patterns for Powder.', 'powder' ) ),
|
|
'hero' => array( __( 'Hero', 'powder' ), __( 'A collection of hero patterns for Powder.', 'powder' ) ),
|
|
'pricing' => array( __( 'Pricing', 'powder' ), __( 'A collection of pricing patterns for Powder.', 'powder' ) ),
|
|
'team' => array( __( 'Team', 'powder' ), __( 'A collection of team patterns for Powder.', 'powder' ) ),
|
|
'template' => array( __( 'Template', 'powder' ), __( 'A collection of template patterns for Powder.', 'powder' ) ),
|
|
'testimonials' => array( __( 'Testimonials', 'powder' ), __( 'A collection of testimonials patterns for Powder.', 'powder' ) ),
|
|
'theme' => array( __( 'Theme', 'powder' ), __( 'A collection of theme patterns for Powder.', 'powder' ) ),
|
|
);
|
|
|
|
foreach ( $categories as $slug => $details ) {
|
|
powder_register_pattern_category( $slug, $details[0], $details[1] );
|
|
}
|
|
}
|
|
add_action( 'init', 'powder_register_pattern_categories' );
|