Skip to content

Button custom field#2719

Merged
Armanul46 merged 25 commits intosovware:buttonfrom
Armanul46:feature/button
Feb 25, 2026
Merged

Button custom field#2719
Armanul46 merged 25 commits intosovware:buttonfrom
Armanul46:feature/button

Conversation

@Armanul46
Copy link
Collaborator

PR Type

What kind of change does this PR introduce?

  • Bugfix
  • Security fix
  • Improvement
  • New Feature
  • Refactoring (no functional changes, no api changes)
  • Build related changes
  • Text changes
  • Other... Please describe:

Description

How to reproduce the issue or how to test the changes

Any linked issues

Fixes #

Checklist

Armanul46 and others added 25 commits November 25, 2025 14:29
- Add directorist-form-label class, colon suffix, and required indicator
  to button sub-field labels for consistency with other form fields
- Add per-sub-field description support (button_text_description,
  button_url_description) in builder and listing form template
- Remove unused label and description builder options
- Update single listing button to outline style with external link icon
- Update button component styles for outline variant and sizing
- Refine listing details content and contact info styles
- Add general base styles to support button field layout
…ing cards

- Add new Action placeholder (phone, email, button) in single listing header builder
- Add Action zone below excerpt in all 4 card layouts (grid/list with/without thumbnail)
- Create action-section.php for single listing page with linked buttons
- Create archive/action-fields/ templates (phone, email, button) as linked action buttons
- Add render_action_fields() method to Listings model for archive cards
- Add action_template() method to SingleListing model
- Register phone, email, button widgets in single_listing_header builder data
- Register button widget in listing_card_widget builder data
- Add Action placeholder to all 4 Card Builder Vue components
- Merge new layout placeholders into saved term meta for existing directory types
- Add SCSS for directorist-listing-actions container (flex, gap, wrap)
- Use output buffering in archive loop templates to prevent empty wrapper divs
- Create archive/custom-fields/button.php for standard card field rendering
- Replace render_action_fields() with render_loop_fields() in all 4 loop templates
- Action items now render as vertical list items (like body.bottom) with icon + label + value
- Use output buffering to conditionally render action <ul> only when data exists
- Add SCSS for .directorist-listing-single__action-list (margin-top + border separator)
- Update single page .directorist-listing-actions spacing and button font-size
- Remove unused render_action_fields() method from Listings model
- Delete archive/action-fields/ templates (phone, email, button) - no longer needed
- Widget settings (icon, show_label) now work via standard render_card_field flow
- Add 'Default' option to button style dropdown, remove 'Link Style'
- Map button styles dynamically: primary, secondary, default classes
- Update style mapping in single action-section, single custom-field,
  and archive custom-field button templates
- Increase action placeholder maxWidget from 2 to 3 to support
  phone + email + button together
- Filter action section widgets against submission form fields in
  SingleListing::action_template() so removing a field from the
  Add Listing form hides the corresponding action on the frontend
…utton)

Introduce a new Action placeholder in the Single Listing Header builder
that lets directory owners display phone (Call Now / WhatsApp), email
(Send Email), and custom button widgets as linked action buttons.

Key changes:
- Add action-placeholder to the listing header builder data with phone,
  email, and button as accepted widgets
- Create action_template() in SingleListing model to resolve action
  widgets against the submission form, including multi-button field_key
  mapping
- Add templates/single/action-section.php to render action buttons with
  icon, label, and style support (primary, secondary, default)
- Extend button custom field with button_style, open_in_new_tab,
  placeholders, and description options
- Add action widget placeholders to all four card builder views
  (grid/list × with/without thumbnail) with conditional visibility
- Update archive email/phone templates with action-variant rendering
  when used inside card action sections
- Add .directorist-listing-actions styles for single header and card
  layouts with responsive button defaults
- Update Card_Widget_Placeholder and List_Item_Card_Widget Vue
  components to support drag-and-drop, widget options, and settings
  modal mutual exclusion
…gets

Feature: Add action section widgets (phone, email, button) to listing header builder
@Armanul46 Armanul46 merged commit e0a1d32 into sovware:button Feb 25, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants