From 1ccc2eed76d0a637693cd52747b8c3493a84d26e Mon Sep 17 00:00:00 2001 From: MWDelaney Date: Sun, 5 Aug 2018 12:07:32 -0400 Subject: [PATCH 1/6] Add searchform partial and function to replace (and maintain) default WordPress functionality --- app/filters.php | 7 +++++++ resources/views/partials/searchform.blade.php | 7 +++++++ 2 files changed, 14 insertions(+) create mode 100644 resources/views/partials/searchform.blade.php diff --git a/app/filters.php b/app/filters.php index 57a6726..d30d166 100644 --- a/app/filters.php +++ b/app/filters.php @@ -68,3 +68,10 @@ add_filter('comments_template', function ($comments_template) { ); return template_path(locate_template(["views/{$comments_template}", $comments_template]) ?: $comments_template); }, 100); + +/** + * Render WordPress searchform using Blade + */ +add_filter('get_search_form', function () { + return template('partials.searchform'); +}); diff --git a/resources/views/partials/searchform.blade.php b/resources/views/partials/searchform.blade.php new file mode 100644 index 0000000..5976069 --- /dev/null +++ b/resources/views/partials/searchform.blade.php @@ -0,0 +1,7 @@ + From d93964b9c44b96fd237eb4d48682226957ccd5d5 Mon Sep 17 00:00:00 2001 From: MWDelaney Date: Sun, 5 Aug 2018 21:06:46 -0400 Subject: [PATCH 2/6] Remove gross WPCS --- resources/views/partials/searchform.blade.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/resources/views/partials/searchform.blade.php b/resources/views/partials/searchform.blade.php index 5976069..d149f51 100644 --- a/resources/views/partials/searchform.blade.php +++ b/resources/views/partials/searchform.blade.php @@ -1,7 +1,7 @@ - From b41047f5a1e611cda4586a7cc6c0d654b9ca1b5e Mon Sep 17 00:00:00 2001 From: MWDelaney Date: Sun, 5 Aug 2018 21:15:08 -0400 Subject: [PATCH 3/6] Add text domain --- resources/views/partials/searchform.blade.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/resources/views/partials/searchform.blade.php b/resources/views/partials/searchform.blade.php index d149f51..ff35d92 100644 --- a/resources/views/partials/searchform.blade.php +++ b/resources/views/partials/searchform.blade.php @@ -1,7 +1,7 @@ - From e898cf1f4d91a0d30cd25c9c86a8ed0e2b3a7f2c Mon Sep 17 00:00:00 2001 From: Ben Date: Mon, 6 Aug 2018 13:06:34 -0700 Subject: [PATCH 4/6] Extract logic from search form template This removes all logic from the search form Blade template, and extracts it to the "Controller" level via Sage's filter system. It also adds a global 'app' filter to hook into, so that the search form data will be served on every page. --- app/filters.php | 17 +++++++++++++++++ resources/views/partials/searchform.blade.php | 8 ++++---- 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/app/filters.php b/app/filters.php index d30d166..16fe4d5 100644 --- a/app/filters.php +++ b/app/filters.php @@ -13,6 +13,11 @@ add_filter('body_class', function (array $classes) { } } + /** Add a global class to everything. + * We want it to come first, so stuff its filter does can be overridden. + */ + array_unshift($classes, 'app'); + /** Add class if sidebar is active */ if (display_sidebar()) { $classes[] = 'sidebar-primary'; @@ -75,3 +80,15 @@ add_filter('comments_template', function ($comments_template) { add_filter('get_search_form', function () { return template('partials.searchform'); }); + +/** + * Collect data for searchform. + */ +add_filter('sage/template/app/data', function ($data) { + $data['sf_action'] = esc_url(home_url('/')); + $data['sf_screen_reader_text'] = _x('Search for:', 'label', 'sage'); + $data['sf_placeholder'] = esc_attr_x('Search …', 'placeholder', 'sage'); + $data['sf_current_query'] = get_search_query(); + $data['sf_submit_text'] = esc_attr_x('Search', 'submit button', 'sage'); + return $data; +}); diff --git a/resources/views/partials/searchform.blade.php b/resources/views/partials/searchform.blade.php index ff35d92..d4b5847 100644 --- a/resources/views/partials/searchform.blade.php +++ b/resources/views/partials/searchform.blade.php @@ -1,7 +1,7 @@ - From d13e8fd9be9715bfc64c26ba4c02fedbda18960b Mon Sep 17 00:00:00 2001 From: "Michael W. Delaney" Date: Wed, 8 Aug 2018 08:51:00 -0400 Subject: [PATCH 5/6] Update filters.php --- app/filters.php | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/app/filters.php b/app/filters.php index 16fe4d5..be1c59b 100644 --- a/app/filters.php +++ b/app/filters.php @@ -84,11 +84,12 @@ add_filter('get_search_form', function () { /** * Collect data for searchform. */ -add_filter('sage/template/app/data', function ($data) { - $data['sf_action'] = esc_url(home_url('/')); - $data['sf_screen_reader_text'] = _x('Search for:', 'label', 'sage'); - $data['sf_placeholder'] = esc_attr_x('Search …', 'placeholder', 'sage'); - $data['sf_current_query'] = get_search_query(); - $data['sf_submit_text'] = esc_attr_x('Search', 'submit button', 'sage'); - return $data; + add_filter('sage/template/app/data', function ($data) { + return $data + [ + 'sf_action' => esc_url(home_url('/')), + 'sf_screen_reader_text' => _x('Search for:', 'label', 'sage'), + 'sf_placeholder' => esc_attr_x('Search …', 'placeholder', 'sage'), + 'sf_current_query' => get_search_query(), + 'sf_submit_text' => esc_attr_x('Search', 'submit button', 'sage'), + ]; }); From c1bc6ef596d0170391e3799eda32a749128a7699 Mon Sep 17 00:00:00 2001 From: "Michael W. Delaney" Date: Wed, 8 Aug 2018 09:55:54 -0400 Subject: [PATCH 6/6] Update filters.php --- app/filters.php | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/app/filters.php b/app/filters.php index be1c59b..6cf6de8 100644 --- a/app/filters.php +++ b/app/filters.php @@ -84,12 +84,12 @@ add_filter('get_search_form', function () { /** * Collect data for searchform. */ - add_filter('sage/template/app/data', function ($data) { - return $data + [ - 'sf_action' => esc_url(home_url('/')), - 'sf_screen_reader_text' => _x('Search for:', 'label', 'sage'), - 'sf_placeholder' => esc_attr_x('Search …', 'placeholder', 'sage'), - 'sf_current_query' => get_search_query(), - 'sf_submit_text' => esc_attr_x('Search', 'submit button', 'sage'), - ]; +add_filter('sage/template/app/data', function ($data) { + return $data + [ + 'sf_action' => esc_url(home_url('/')), + 'sf_screen_reader_text' => _x('Search for:', 'label', 'sage'), + 'sf_placeholder' => esc_attr_x('Search …', 'placeholder', 'sage'), + 'sf_current_query' => get_search_query(), + 'sf_submit_text' => esc_attr_x('Search', 'submit button', 'sage'), + ]; });