Dashboard
PHP:
8.1.33
OS:
Linux
User:
lawtemple
/
/
home
/
www
/
lawtemplefirm.com
/
wp-content
/
themes
/
law-temple-theme
/
inc
📤 Upload
📝 New File
📁 New Folder
Close
Editing: page-builder.php
<?php if ( ! defined( 'ABSPATH' ) ) { exit; } function lt_theme_page_builder_pattern_categories() { register_block_pattern_category( 'law-firm-pages', array( 'label'=>__( 'Law Firm Pages', 'law-temple-theme' ) ) ); register_block_pattern_category( 'law-firm-sections', array( 'label'=>__( 'Law Firm Sections', 'law-temple-theme' ) ) ); register_block_pattern_category( 'law-firm-content', array( 'label'=>__( 'Law Firm Dynamic Content', 'law-temple-theme' ) ) ); } add_action( 'init', 'lt_theme_page_builder_pattern_categories', 9 ); /** Starter pages supplied by the presentation theme for safe framework setup. */ function lt_theme_starter_page_content( $content, $key ) { if ( 'about' === $key && ! trim( (string) $content ) ) { return lt_theme_about_starter_markup(); } if ( 'contact' === $key ) { return lt_theme_contact_starter_markup(); } return $content; } add_filter( 'lt_core_starter_page_content', 'lt_theme_starter_page_content', 10, 2 ); function lt_theme_pattern_content( $slug ) { if ( class_exists( 'WP_Block_Patterns_Registry' ) ) { $pattern = WP_Block_Patterns_Registry::get_instance()->get_registered( $slug ); if ( is_array( $pattern ) && ! empty( $pattern['content'] ) ) { return (string) $pattern['content']; } } $name = sanitize_file_name( str_replace( 'law-temple/', '', (string) $slug ) ); $file = LT_THEME_DIR . 'patterns/' . $name . '.php'; if ( $name && file_exists( $file ) ) { ob_start(); include $file; return (string) ob_get_clean(); } return ''; } function lt_theme_about_starter_markup() { $pattern = lt_theme_pattern_content( 'law-temple/page-about' ); if ( $pattern ) { return $pattern; } return '<!-- wp:heading {"level":2} --><h2 class="wp-block-heading">' . esc_html__( 'About the Firm', 'law-temple-theme' ) . '</h2><!-- /wp:heading --><!-- wp:paragraph --><p>' . esc_html__( 'Introduce the firm, its clients, approach and professional values.', 'law-temple-theme' ) . '</p><!-- /wp:paragraph -->'; } function lt_theme_contact_starter_markup() { $pattern = lt_theme_pattern_content( 'law-temple/page-contact' ); if ( $pattern ) { return $pattern; } return '<!-- wp:heading {"level":2} --><h2 class="wp-block-heading">' . esc_html__( 'Contact', 'law-temple-theme' ) . '</h2><!-- /wp:heading --><!-- wp:law-firm/enquiry-form /-->'; } function lt_theme_builder_body_class( $classes ) { if ( is_page() ) { $layout = get_post_meta( get_queried_object_id(), 'lt_page_layout', true ); if ( 'builder' === $layout ) { $classes[] = 'lt-page-builder'; } } return $classes; } add_filter( 'body_class', 'lt_theme_builder_body_class', 30 ); function lt_theme_configure_starter_pages( $pages, $demo = false ) { foreach ( array( 'about','contact' ) as $key ) { $id = absint( $pages[ $key ] ?? 0 ); if ( ! $id ) { continue; } $post = get_post( $id ); if ( ! $post || false === strpos( (string) $post->post_content, 'lt-builder-' ) ) { continue; } if ( ! get_post_meta( $id, 'lt_page_layout', true ) ) { update_post_meta( $id, 'lt_page_layout', 'builder' ); } if ( ! get_post_meta( $id, 'lt_page_hero_layout', true ) ) { update_post_meta( $id, 'lt_page_hero_layout', 'none' ); } } } add_action( 'lt_core_after_setup', 'lt_theme_configure_starter_pages', 10, 2 );
Save
Cancel