Astra_Update_Footer_Builder_Design::configure()

Configure the ability.


Description


Source

File: inc/abilities/customizer/footer/class-astra-update-footer-builder-design.php

	public function configure() {
		$this->id          = 'astra/update-footer-builder-design';
		$this->label       = __( 'Update Astra Footer Builder Design Options', 'astra' );
		$this->description = __( 'Updates design options for Astra footer builder sections (above, primary, below) including background, border color, border size, padding and margin.', 'astra' );
		$this->category    = 'astra';

		$this->meta = array(
			'tool_type'   => 'write',
			'constraints' => array(
				'dependencies' => array(
					array(
						'tool'             => 'astra/get-footer-builder-design',
						'description_hint' => 'Get current design settings before updating to preserve existing values',
					),
				),
				'usage_hints'  => array(
					'section'      => 'Required. Target footer section to update: "above", "primary", or "below". Each section has independent design settings. DEFAULT to "primary" if user does not explicitly mention above/below footer - most users refer to the main primary footer section when saying "footer".',
					'background'   => 'Responsive background object with desktop/tablet/mobile keys. Each device can have: background-color (hex/rgba), background-image (URL), background-repeat (repeat/no-repeat/repeat-x/repeat-y), background-position (e.g., "center center"), background-size (auto/cover/contain), background-attachment (scroll/fixed), background-type (color/image/gradient), overlay-type (color/gradient), overlay-color, overlay-gradient. Partial updates merge with existing values.',
					'border_color' => 'Top border color in CSS format (hex like "#e5e5e5", rgba like "rgba(0,0,0,0.1)", or color name). Creates visual separation line at top of footer section. Empty string removes border color.',
					'border_size'  => 'Top border thickness in pixels (0-600). 0 = no border. Common values: 1px (subtle), 2-3px (medium), 5px+ (bold accent). Works with border_color to create separator.',
					'padding'      => 'Responsive internal spacing with desktop/tablet/mobile keys. Each device has top/right/bottom/left (numeric values) and units via desktop-unit/tablet-unit/mobile-unit (px/em/rem/%). Example: {"desktop": {"top": "60", "bottom": "60"}, "desktop-unit": "px"}. Controls space inside footer section.',
					'margin'       => 'Responsive external spacing with desktop/tablet/mobile keys. Each device has top/right/bottom/left (numeric values) and units via desktop-unit/tablet-unit/mobile-unit (px/em/rem/%). Controls space around footer section, separating it from adjacent sections.',
					'responsive'   => 'All design properties support device-specific values. Always provide desktop values at minimum. Tablet/mobile inherit from desktop if not specified. Use responsive settings to create optimal layouts per device.',
					'workflow'     => 'Best practice: 1) Call get-footer-builder-design to see current values, 2) Modify only properties you want to change, 3) Provide section parameter (required), 4) Use CSS color formats for colors, numeric values with units for spacing.',
				),
			),
		);
	}

User Contributed Notes

You must log in before being able to contribute a note or feedback.