Based on the simple search and category form this example adds form fields for:

  • CPTs
  • Tags
  • Custom Taxonomies
  • Custom Fields
  • Range Selectors
  • Order by
  • Order (Asc/Desc)
  • by distance (to be done)

Custom vars (functions.php)

<?php
 function custom_search_query_vars_filter($vars) {
	$vars[] .= 'cs_text_field';
    $vars[] .= 'cs_category_name';
    $vars[] .= 'cs_tag';
    $vars[] .= 'cs_orderby';
    $vars[] .= 'cs_order';
    $vars[] .= 'cs_post_type';
    $vars[] .= 'cs_rating';
    $vars[] .= 'cs_featured';
    $vars[] .= 'cs_location_category';
    $vars[] .= 'cs_price_group';
	return $vars;
}
add_filter( 'query_vars', 'custom_search_query_vars_filter' );
?>

Template part (parts/search/searchform-all.php)

<?php 
$current_url = home_url($_SERVER['REQUEST_URI']);
// or $_PHP_SELF
$textField = sanitize_text_field(get_query_var('cs_text_field'));
$filterByCategory = sanitize_text_field(get_query_var('cs_category_name'));
$filterByTag = sanitize_text_field(get_query_var( 'cs_tag' ));
$orderBy = sanitize_text_field(get_query_var( 'cs_orderby' ));
$order = sanitize_text_field(get_query_var( 'cs_order' ));
$postType = sanitize_text_field(get_query_var( 'cs_post_type' ));
$rating = sanitize_text_field(get_query_var( 'cs_rating' ));
$featured = sanitize_text_field(get_query_var( 'cs_featured' ));
$locationCategory = sanitize_text_field(get_query_var( 'cs_location_category' ));
$priceGroup = sanitize_text_field(get_query_var( 'cs_price_group' ));
$minPrice = 0; 
$maxPrice = 9999999999; 
$priceGroupText = 'All prices';

if ($priceGroup == 1 ) { $min_price = 0; $max_price = 10000; $priceGroup_text = 'Up to £10,000';} 
elseif ($priceGroup == 2 ) { $min_price = 10000; $max_price = 20000; $priceGroup_text = '£10,000 - £20,000';}
elseif ($priceGroup == 3 ) { $min_price = 20000; $max_price = 30000; $priceGroup_text = '£20,000 - £30,000';}
elseif ($priceGroup == 4 ) { $min_price = 30000; $max_price = 40000; $priceGroup_text = '£30,000 - £40,0000';}
elseif ($priceGroup == 5 ) { $min_price = 40000; $max_price = 50000; $priceGroup_text = '£40,000 - £50,000';}
elseif ($priceGroup == 6 ) { $min_price = 50000; $priceGroup_text = '£50,000 Plus';}

?>
<form role="search" method="get" action="<?php $current_url ?>#form" class="wp-block-search__button-outside wp-block-search__text-button wp-block-search">
	<label for="wp-block-search__input-1" class="wp-block-search__label">Search the site</label>
	<div class="wp-block-search__inside-wrapper ">
		<input type="search" id="wp-block-search__input-1" class="wp-block-search__input " name="cs_text_field" value="<?php echo $textField ?>" placeholder="Text Search..." >
	</div>
	<hr class="clearfix" />
	<label for="wp-block-search__input-2" class="wp-block-search__label">Category</label>
	<div class="wp-block-search__inside-wrapper ">
		<select name="cs_category_name">
			<option value="" >Select below:</option>
			<?php 
				$args = array(
					'exclude' => '1'
				);
				
				$categories = get_categories( $args );
				foreach ( $categories as $category ) {
				$selected = $category->slug === $filterByCategory ? 'selected' : '';
														
				echo '<option value="' . $category->slug . '" ' . $selected . '>' . $category->name . '</option>';
				} 
				?>
			</select>
	</div>
	<hr class="clearfix" />
    <label for="wp-block-search__input-3" class="wp-block-search__label">Tag</label>
	<div class="wp-block-search__inside-wrapper ">
		<select name="cs_tag">
			<option value="" >Select below:</option>
			<?php 
				$tags = get_tags();

                foreach ( $tags as $tag ) {
                    $selected = $tag->slug === $filterByTag ? 'selected' : '';
                                                    
                    echo '<option value="' . $tag->slug . '" ' . $selected . '>' . $tag->name . '</option>';
                  }
				?>
			</select>
	</div>
	<hr class="clearfix" />
    <label for="wp-block-search__input-4" class="wp-block-search__label">Order by</label>
	<div class="wp-block-search__inside-wrapper ">
		<select name="cs_orderby">
			<?php 
				$orderByOptions = array('date' => 'Date', 'title' => 'Title' );

                foreach ( $orderByOptions as $orderByValue => $orderByText ) {
                    $selected = (!$orderBy && $orderByValue === 'date') || $orderByValue === $orderBy ? 'selected' : '';
                   
                    echo '<option value="' . $orderByValue . '" ' . $selected . '>' . $orderByText . '</option>';
                }
				?>
			</select>
	</div>
	<hr class="clearfix" />
    <label for="wp-block-search__input-5" class="wp-block-search__label">Order</label>
	<div class="wp-block-search__inside-wrapper ">
		<select name="cs_order">
			<?php 
				$orderOptions = array('DESC', 'ASC' );

                foreach ( $orderOptions as $orderOption ) {
                    $selected = (!$order && $orderOption === 'DESC') || $orderOption === $order ? 'selected' : '';
                                                            
                    echo '<option value="' . $orderOption . '" ' . $selected . '>' . $orderOption . '</option>';
                }
				?>
			</select>
	</div>
	<hr class="clearfix" />
    <label for="wp-block-search__input-6" class="wp-block-search__label">Post Type</label>
	<div class="wp-block-search__inside-wrapper ">
		<select name="cs_post_type">
			<option value="" >Select below:</option>
			<?php 
                $args = array(
                    'public'   => true,
                    '_builtin' => false
                );
                $thePostTypes = get_post_types($args, 'objects'); ?>
                <?php
                foreach ( $thePostTypes as $thePostType ) {
                    $selected = $thePostType->name === $postType ? 'selected' : '';
                                                    
                    echo '<option value="' . $thePostType->name . '" ' . $selected . '>' . $thePostType->labels->singular_name . '</option>';
                  }
				?>
			</select>
	</div>
	<hr class="clearfix" />
    <label for="wp-block-search__input-7" class="wp-block-search__label">Rating</label>
	<div class="wp-block-search__inside-wrapper ">
		<select name="cs_rating">
			<option value="" >Select below:</option>
            <?php $ratingOptions = array('one-star' => '1 Star', 'two-star' => '2 Star', 'three-star' => '3 Star', 'four-star' => '4 Star', 'five-star' => '5 Star' ); ?>
                <?php
                foreach ( $ratingOptions as $ratingOptionValue => $ratingOptionText ) {
                    $selected = $ratingOptionValue === $rating ? 'selected' : '';
                                                    
                    echo '<option value="' . $ratingOptionValue . '" ' . $selected . '>' . $ratingOptionText . '</option>';
                  }
				?>
			</select>
	</div>
	<hr class="clearfix" />
    <label for="wp-block-search__input-8" class="wp-block-search__label">Featured</label>
	<div class="wp-block-search__inside-wrapper ">
		<select name="cs_featured">
            <?php $featuredOptions = array('' => 'Not Featured', 'featured' => 'Featured'); ?>
                <?php
                foreach ( $featuredOptions as $featuredOptionValue => $featuredOptionText ) {
                    $selected = $featuredOptionValue === $featured ? 'selected' : '';
                                                    
                    echo '<option value="' . $featuredOptionValue . '" ' . $selected . '>' . $featuredOptionText . '</option>';
                  }
				?>
			</select>
	</div>
	<hr class="clearfix" />
    <label for="wp-block-search__input-9" class="wp-block-search__label">Location Category</label>
	<div class="wp-block-search__inside-wrapper ">
		<select name="cs_location_category">
            <option value="" >Select below:</option>
                <?php 
                $terms = get_terms( array(
                    'taxonomy' => 'locations-category',
                    'hide_empty' => false,
                ) );
                foreach ( $terms as $term ) {
                    $selected = $term->slug === $locationCategory ? 'selected' : '';
                                                    
                    echo '<option value="' . $term->slug . '" ' . $selected . '>' . $term->name . '</option>';
                  }
				?>
			</select>
	</div>
	<hr class="clearfix" />

    <label for="wp-block-search__input-10" class="wp-block-search__label">Price Group</label>
	<div class="wp-block-search__inside-wrapper ">
		<select name="cs_price_group">
            <option value="0" <?php if ($priceGroup == "0") { ?> selected <?php } ?>>Select a price range</option>
            <option value="1" <?php if ($priceGroup == "1") { ?> selected <?php } ?>>Up to £10,000</option>
            <option value="2" <?php if ($priceGroup == "2") { ?> selected <?php } ?>>£10,000 - £20,000</option>
            <option value="3" <?php if ($priceGroup == "3") { ?> selected <?php } ?>>£20,000 - £30,000</option>
            <option value="4" <?php if ($priceGroup == "4") { ?> selected <?php } ?>>£30,000 - £40,000</option>
            <option value="5" <?php if ($priceGroup == "5") { ?> selected <?php } ?>>£40,000 - £50,000</option>
            <option value="6" <?php if ($priceGroup == "6") { ?> selected <?php } ?>>£50,000 plus</option>
			</select>
	</div>
	<hr class="clearfix" />
    <!-- <a href="<?php $_PHP_SELF ?>#form" class="button">Clear all</a> -->
    <hr />	
	 <button type="submit" class="wp-block-search__button  ">Search this site</button>			
</form> 
<hr />
<hr />
<h3>Results below...</h3>
<hr />
<hr />
<?php 
$args = array(
		'post_type' => 'post', 
		'posts_per_page' => -1, 
		'post_status' => 'publish',
        'ignore_sticky_posts' => true
);
if (!empty ($rating) ) {
    if (!empty ($featured) ) {
        $newArgs = array(
            'meta_query'    => array(
                'relation'      => 'AND',
                array(
                    'key'       => 'rating',
                    'value'     => $rating,
                    'compare'   => '='
                ),
                array(
                    'key'       => 'featured',
                    'value'     => true,
                    'compare'   => '='
                )
            )
        );
    } else {
        $newArgs = array(
            'meta_query'    => array(
                array(
                    'key'       => 'rating',
                    'value'     => $rating,
                    'compare'   => '='
                )
            )
        );
    }
    $args = array_merge($args, $newArgs);
}
if (!empty ($featured) ) {
    if (!empty ($rating) ) {
        $newArgs = array(
            'meta_query'    => array(
                'relation'      => 'AND',
                array(
                    'key'       => 'rating',
                    'value'     => $rating,
                    'compare'   => '='
                ),
                array(
                    'key'       => 'featured',
                    'value'     => true,
                    'compare'   => '='
                )
            )
        );
    } else {
        $newArgs = array(
            'meta_query'    => array(
                array(
                    'key'       => 'featured',
                    'value'     => true,
                    'compare'   => '='
                )
            )
        );
    }
    $args = array_merge($args, $newArgs);
}
if (!empty ($priceGroup) ) {
    $newArgs = array(
        'meta_query' => array(
            array(
                    'key' => 'price',
                    'value' => array($min_price, $max_price),
                    'type' => 'numeric',
                    'compare' => 'BETWEEN'
                    )
            )
    );
    $args = array_merge($args, $newArgs);
}

if (!empty ($textField) ) {
    $newArgs = array(
        's' => $textField,
    );
    $args = array_merge($args, $newArgs);
}
if (!empty ($filterByCategory) ) {
    $newArgs = array(
        'category_name'		=> $filterByCategory,
    );
    $args = array_merge($args, $newArgs);
}
if (!empty ($filterByTag) ) {
    $newArgs = array(
        'tag'		=> $filterByTag,
    );
    $args = array_merge($args, $newArgs);
}
if (!empty ($orderBy) ) {
    $newArgs = array(
        'orderby'		=> $orderBy,
    );
    $args = array_merge($args, $newArgs);
}
if (!empty ($order) ) {
    $newArgs = array(
        'order'		=> $order,
    );
    $args = array_merge($args, $newArgs);
}
if (!empty ($postType) ) {
    $newArgs = array(
        'post_type' => $postType, 
    );
    $args = array_merge($args, $newArgs);
}
if (!empty ($locationCategory) ) {
    $newArgs = array('tax_query' => array(
        array(
            'taxonomy' => 'locations-category',
            'field'    => 'slug',
            'terms'    => $locationCategory,
        ),
    )
    );
    $args = array_merge($args, $newArgs);
}
$search_query = new WP_Query( $args );
?>
<?php if($search_query->have_posts()): ?>
    <div class="custom-search-results">
    <?php while($search_query->have_posts()): $search_query->the_post() ?>
    
        <a href="<?php the_permalink(); ?>">
            <?php the_title(); ?>
            - <?php $post_date = get_the_date( 'l F j, Y' ); echo $post_date; ?> 
            - <?php 
            $rating = get_field('rating');
            echo $rating['label']; ?>  
            - <?php if (get_field('featured') == true) {
                echo 'this is featured';
            } else {
                echo 'not featured';
            } ?>
            - <?php if (get_field('price')) { ?>
                £<?php
                the_field('price');
            } ?>
            - 
            <?php 
            $term_obj_list = get_the_terms( $post->ID, 'locations-category' );
            $terms_string = join(', ', wp_list_pluck($term_obj_list, 'name'));
            echo $terms_string;
             ?>
         </a><hr />
    <?php endwhile; ?>
        </div>
<?php endif; ?>
<?php wp_reset_postdata(); ?>
<?php if (!empty ($textField) ) { ?>
    <p>You searched for "<?php echo $textField; ?> ". Here are the results:</p>
<?php } ?>
<?php if (!empty ($filterByCategory) ) { ?>
    <p>In Category: <?php echo $filterByCategory; ?>.</p>
<?php } ?>
<?php if (!empty ($filterByTag) ) { ?>
    <p>With Tag: <?php echo $filterByTag; ?>.</p>
<?php } ?>
<?php if (!empty ($orderBy) ) { ?>
    <p>Ordered by: <?php echo $orderBy; ?>.</p>
<?php } ?>
<?php if (!empty ($order) ) { ?>
    <p>Order: <?php echo $order; ?>.</p>
<?php } ?>
<?php if (!empty ($postType) ) { ?>
    <p>Post type: <?php echo $postType; ?>.</p>
<?php } ?>
<?php if (!empty ($rating) ) { ?>
    <p>Rating: <?php echo $rating; ?>.</p>
<?php } ?>
<?php if (!empty ($featured) ) { ?>
    <p>Featured: <?php echo $featured; ?>.</p>
<?php } ?>
<?php if (!empty ($locationCategory) ) { ?>
    <p>Location Category: <?php echo $locationCategory; ?>.</p>
<?php } ?>

Below is an example form with multiple options:

Note: filtering by more than one option can result in no results.



Results below...



theme.json naming (slugs) - Thursday April 4, 2024 - 1 Star - not featured - -
Slick slider block settings - Wednesday March 27, 2024 - 1 Star - not featured - -
Naming conventions for wordpress files form Chat GPT - Wednesday January 17, 2024 - 1 Star - not featured - -
Block Annimation Plugin - Wednesday January 3, 2024 - 1 Star - not featured - -
Grid Classes - Wednesday January 3, 2024 - 1 Star - not featured - -
GSAP parallax - Wednesday January 3, 2024 - 1 Star - not featured - -
Cover Styles - Wednesday January 3, 2024 - 1 Star - not featured - -
Block Class Helper (Plugin) - Monday January 1, 2024 - 1 Star - not featured - -
- Wednesday November 29, 2023 - 1 Star - not featured - -
block.json config - Thursday November 23, 2023 - 1 Star - not featured - -
Block Query Loop - Wednesday November 22, 2023 - 1 Star - not featured - -
Cumulative Layout Shift - Wednesday November 22, 2023 - 1 Star - not featured - -
Align cover content to bottom of cover area - Monday October 23, 2023 - 1 Star - not featured - -
Cover block under the site header (not recomended) - Monday October 23, 2023 - 1 Star - not featured - -
Using icons or images from theme folders - Wednesday October 18, 2023 - 1 Star - not featured - -
Search page for an example race site - Tuesday October 17, 2023 - 1 Star - not featured - -
Zoom on hover for columns block - Monday October 16, 2023 - 1 Star - not featured - -
Parallax Cover Image with GSAP - Monday October 16, 2023 - 1 Star - not featured - -
Sticky columns - Monday October 16, 2023 - 1 Star - not featured - -
Taxonomy Widget – 3 ways - Tuesday October 3, 2023 - 1 Star - not featured - -
Search & Replace between tags - Monday September 25, 2023 - 1 Star - not featured - -
only Reusable Blocks in acf relationship fields - Friday September 22, 2023 - 1 Star - not featured - -
Get all terms and post terms - Wednesday June 14, 2023 - 1 Star - not featured - -
Querry posts 2 ways with ACF field - Wednesday June 14, 2023 - 1 Star - not featured - -
Theme media assets and SVG icons - Tuesday June 13, 2023 - 1 Star - not featured - -
Icons - Friday June 9, 2023 - 1 Star - not featured - -
FSE page template - Friday June 9, 2023 - 1 Star - not featured - -
Gomo Aspect Square blocks - Tuesday May 23, 2023 - 1 Star - not featured - -
Gomo parallax cover images - Tuesday May 23, 2023 - 1 Star - not featured - -
Content Security Policy Manager - Thursday April 6, 2023 - 1 Star - not featured - -
ACF Relationship if published - Wednesday March 22, 2023 - 1 Star - not featured - -
Oliver Twist - Tuesday February 7, 2023 - 5 Stars - not featured - -
Snow white - Tuesday February 7, 2023 - 4 Stars - not featured - -
Adventure of Huckleberry Finn - Tuesday February 7, 2023 - 3 Stars - not featured - -
Advanced Query Loop plugin - Tuesday February 7, 2023 - one-star - not featured - -
Best Practice – Code styling and formatting - Thursday February 2, 2023 - 1 Star - not featured - -
Component Address details - Tuesday January 10, 2023 - - not featured - -
Simple GSAP text animation on scroll (2 ways) - Thursday November 24, 2022 - - not featured - -
Equal Height – jQuery - Tuesday November 22, 2022 - - not featured - -
Widgets in Gutenberg – issues - Friday November 18, 2022 - - not featured - -
Co Blocks Plugin - Monday November 14, 2022 - five-star - this is featured - £30000 -
Browser Shots - Monday November 14, 2022 - three-star - this is featured - £20000 -
Using the WP flexbox grid - Monday November 14, 2022 - - not featured - -
GSAP animated Separator - Friday November 11, 2022 - - not featured - -
Customizer settings – functions - Wednesday November 9, 2022 - - not featured - -
Image sizes – functions - Wednesday November 9, 2022 - - not featured - -
Additional Functions php - Wednesday November 9, 2022 - - not featured - -
General Functions php - Wednesday November 9, 2022 - - not featured - -
Match height for cards in a slick slider – jQuery - Wednesday November 9, 2022 - - not featured - -
Card links – jQuery - Wednesday November 9, 2022 - - not featured - -
Sticky Header – jQuery - Wednesday November 9, 2022 - - not featured - -
Accordion – jQuery - Wednesday November 9, 2022 - - not featured - -
Adding a down arrow to cover blocks – jQuery - Wednesday November 9, 2022 - - not featured - -
Adding iframe video through jQuery - Wednesday November 9, 2022 - - not featured - -
Blocks Animation Plugin - Wednesday November 9, 2022 - four-star - not featured - £10000 -
Add class to external links - Wednesday November 9, 2022 - - not featured - -
Loading a template file from a sub folder - Friday November 4, 2022 - - not featured - -
Helpers - Thursday November 3, 2022 - - not featured - -
Adding reusable blocks to headers, content or footers - Tuesday November 1, 2022 - - not featured - -
GSAP animated separator - Thursday October 27, 2022 - - not featured - -
GSAP reveal image on scroll - Thursday October 27, 2022 - - not featured - -
GSAP Image with parallax effect - Thursday October 27, 2022 - - not featured - -
Check if a specific block is in the_content - Friday October 7, 2022 - - not featured - -
Animation Effects (Block Transitions Plugin) - Saturday May 14, 2022 - five-star - not featured - £40000 -
Query Vars - Monday April 4, 2022 - - not featured - -
Mobile Column Classes with Flex basis - Tuesday March 29, 2022 - - not featured - -
Timeline plugins - Friday March 25, 2022 - - not featured - -
news 1 - Friday January 21, 2022 - - not featured - -
news 2 - Friday January 21, 2022 - - not featured - -
A test post - Friday September 10, 2021 - - not featured - -
Alignments and Margins - Thursday July 29, 2021 - - not featured - -
Order custom post type by title - Wednesday July 28, 2021 - - not featured - -
Google Circle Videos - Thursday June 24, 2021 - - not featured - -
GSAP Pinning Hero Panels with Zoom on images. - Wednesday June 16, 2021 - - not featured - -
GSAP parallax - Tuesday June 15, 2021 - - not featured - -
gravity form on dark background - Monday June 14, 2021 - - not featured - -
Anchor offset for sites with Fixed header - Thursday June 3, 2021 - - not featured - -
Cover page template - Tuesday June 1, 2021 - - not featured - -
ACF Inner blocks example - Monday May 31, 2021 - - not featured - -
svg animation - Monday May 24, 2021 - - not featured - -
GSAP Pinning Hero Panels (like google store) - Friday May 7, 2021 - - not featured - -
GSAP Pictures (like google store) - Thursday May 6, 2021 - - not featured - -
Scroll Progress Bar with gsap - Thursday May 6, 2021 - - not featured - -
GSAP ScrollTrigger - Tuesday April 13, 2021 - - not featured - -
Block Lab Plugin - Thursday April 8, 2021 - - not featured - -
Cursor dots - Thursday April 8, 2021 - - not featured - -
Wave divider - Thursday April 8, 2021 - - not featured - -
SVG divider - Thursday April 8, 2021 - - not featured - -
Header test post – none - Monday March 8, 2021 - - not featured - -
Header test post – reusable block - Monday March 8, 2021 - - not featured - -
Header test post – custom – this is an extra long title just to test and see how it looks - Monday March 8, 2021 - - not featured - -
Entry Header test – custom 1 - Thursday March 4, 2021 - - not featured - -
Entry Header - Monday March 1, 2021 - - not featured - -
Social Menu (old) - Saturday February 6, 2021 - - not featured - -
Social Links with Yoast - Thursday January 21, 2021 - - not featured - -
Icon Test - Monday December 21, 2020 - - not featured - -
Flex Grid - Thursday December 17, 2020 - 1 Star - not featured - -
Float Grid - Thursday December 17, 2020 - - not featured - -
Adding page or post styles - Wednesday December 9, 2020 - - not featured - -
Visibility SASS - Thursday November 26, 2020 - - not featured - -
Buttons test - Friday November 20, 2020 - - not featured - -
Audio file - Saturday November 14, 2020 - - not featured - -
Content width Alignments - Saturday November 7, 2020 - - not featured - -
Video background - Monday November 2, 2020 - - not featured - -
Color and Gradient Palettes - Thursday October 22, 2020 - - not featured - -
Block Patterns - Wednesday October 21, 2020 - - not featured - -
Cover - Friday October 16, 2020 - - not featured - -
Gradient text - Thursday October 15, 2020 - - not featured - -
Clouds Over Image - Monday October 5, 2020 - - not featured - -
Animated Gradient Cover Background - Monday October 5, 2020 - - not featured - -
Animated Text - Monday October 5, 2020 - - not featured - -
Query Block Test - Friday October 2, 2020 - - not featured - -
Separator - Friday September 18, 2020 - - not featured - -
Font family SASS for different webfonts - Thursday September 3, 2020 - - not featured - -
Featured Post - Monday June 1, 2020 - - this is featured - -
Headers - Thursday May 21, 2020 - - not featured - -
Welcome to the Gutenberg Editor 2 - Wednesday April 29, 2020 - - not featured - -
Query (Cards, Testimonials etc) - Friday April 24, 2020 - - not featured - -
Sitemaps in WP - Thursday April 23, 2020 - - not featured - -
PX vs REM vs EM etc - Wednesday April 22, 2020 - - not featured - -
Nav menu classes - Wednesday April 22, 2020 - - not featured - -
SVGs on WordPress and for icons - Tuesday April 21, 2020 - - not featured - -
Browse Happy - Tuesday April 21, 2020 - - not featured - -
Image loading and device sizes - Tuesday February 25, 2020 - - not featured - -
Added security - Tuesday February 25, 2020 - - not featured - -
Website Email through a verified sender – SendGrid - Tuesday February 25, 2020 - - not featured - -
Gutenburg reusable blocks - Monday February 24, 2020 - - not featured - -
Example Twitter feed - Tuesday January 28, 2020 - - not featured - -
Search and Filter Pro - Tuesday November 26, 2019 - - not featured - -
Team - Wednesday November 20, 2019 - - not featured - -
Full Screen Cover - Monday November 18, 2019 - - not featured - -
Custom ACF blocks - Friday November 8, 2019 - 1 Star - not featured - -
Custom Taxonomies - Thursday November 7, 2019 - - not featured - -
Browser Prefix SCSS Mixin - Tuesday November 5, 2019 - - not featured - -
Animation - Friday November 1, 2019 - - not featured - -
Welcome to the Gutenberg Editor - Wednesday October 23, 2019 - - not featured - -
Search and filter (basic) CPT - Wednesday October 23, 2019 - - not featured - -
Back to Top Button - Tuesday October 22, 2019 - - not featured - -
Forms - Friday October 4, 2019 - - not featured - -
Icons - Tuesday October 1, 2019 - - not featured - -
Testimonials - Tuesday October 1, 2019 - - not featured - -
Accordion - Tuesday October 1, 2019 - - not featured - -
Maps - Tuesday October 1, 2019 - - not featured - -
Sliders - Tuesday October 1, 2019 - - not featured - -
Widgets - Tuesday October 1, 2019 - - not featured - -
Images, embeds and Galleries - Tuesday October 1, 2019 - - not featured - -
Buttons - Tuesday October 1, 2019 - - not featured - -
Colours - Tuesday October 1, 2019 - - not featured - -
Kitchen Sink - Friday September 27, 2019 - - not featured - -
Typography - Thursday September 26, 2019 - - not featured - -
Custom Post Types - Thursday September 26, 2019 - - not featured - -
Header test post – default - Friday September 20, 2019 - - not featured - -
Hello world! - Wednesday May 8, 2019 - - not featured - -
Social media basics - Thursday July 20, 2017 - - not featured - -
Why you need an SSL in 2017 - Thursday July 20, 2017 - - not featured - -
Website maintenance checklist - Thursday July 20, 2017 - - this is featured - -
Google Merchant Center shopping advertisments - Monday June 26, 2017 - - this is featured - -
SEO basics - Monday June 26, 2017 - - not featured - -
Slim Menu - Wednesday June 8, 2016 - - not featured - -
Imsanity - Tuesday May 24, 2016 - - not featured - -
Updating Staging to Live – WP engine and Gravity forms - Wednesday May 18, 2016 - - not featured - -
Accessability - Friday April 22, 2016 - - not featured - -
Our favourite plugins - Thursday September 4, 2014 - - this is featured - -
Post Format: Image (Caption) - Saturday August 7, 2010 - - not featured - -

Search the site


Address

123 Main Street
Town
City
P05T C0D3

Tel: 01234 567 899

Mob: 01234 567 899

Email: ben@gomopress.com


Copyright 2023. Blah blah blah Company Limited