From 0984d82b363d70c960d2d229254b2dd924d9ffd5 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 57a6726f..d30d166b 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 00000000..5976069d --- /dev/null +++ b/resources/views/partials/searchform.blade.php @@ -0,0 +1,7 @@ + From f1cb3a1ef01ed6bb0c3bfb1fc887e8b9c9450a15 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 5976069d..d149f515 100644 --- a/resources/views/partials/searchform.blade.php +++ b/resources/views/partials/searchform.blade.php @@ -1,7 +1,7 @@ - From 13b0875bdc755c41bf9364b898cf37fa9847c8da 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 d149f515..ff35d929 100644 --- a/resources/views/partials/searchform.blade.php +++ b/resources/views/partials/searchform.blade.php @@ -1,7 +1,7 @@ - From b91209013930e48709d4c572eb9a9945fd7ee91d 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 d30d166b..16fe4d5c 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 ff35d929..d4b58471 100644 --- a/resources/views/partials/searchform.blade.php +++ b/resources/views/partials/searchform.blade.php @@ -1,7 +1,7 @@ - From 28710faf2f9c21549fa7dd6e2e36430db448bf95 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 16fe4d5c..be1c59be 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 230f19485586cd1e92b753d40e8960ca164b0237 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 be1c59be..6cf6de83 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'), + ]; });