Breadcrumb Block
This is a single-block plugin for the breadcrumb trail. It’s simple, lightweight, SEO-friendly, and WooCommerce compatibility. It also includes some simple separator icons. It works everywhere: Page Editor, Site Editor, and template files. How to customize the breadcrumb How to change/remove an item? add_filter( 'breadcrumb_block_get_item', function ( $item_args, $context, $breadcrumbs_instance ) { // Ignore items without context. if ( ! $context || ! ( $context['object'] ?? false ) ) { return $item_args; } // Eg: remove a term. if ( 'term' === ( $context['type'] ?? '' ) && 'term-slug' === $context['object']->slug ) { return false; } // Eg: Change the title of a page. if ( 'page' === ( $context['type'] ?? '' ) && page_id_to_change === $context['object']->ID ) { $item_args[0] = 'Make it shorter'; } return $item_args; }, 10, 3 ); $item_args is a 3-item array: [$item_label, $item_link, $item_attrs] $context is an associative array: ['type' => 'item type', 'object' => 'item object']. type can be one of the following values: front_page, home, shop, page, post, single, term, taxonomy, post_type_archive, search, 404, paged, author, date_year, date_month, date_day, attachment. How to change the markup of the block? add_filter( 'breadcrumb_block_get_breadcrumb_trail', function ( $markup, $args, $breadcrumbs_instance ) { return $markup; }, 10, 3 ); How to add or remove the items from the breadcrumb trail? add_filter( 'breadcrumb_block_get_items', function ( $items, $breadcrumbs_instance ) { return $items; }, 10, 2 ); How to use a custom separator for the breadcrumb trail? add_filter( 'breadcrumb_block_get_args', function ( $args ) { // For example, change separator. $args['separator'] = ' '; return $args; } ); The custom separator should be an inline SVG. To make sure it displays properly, it should have three attributes: width, height, and fill. The values of these attributes should be as follows: fill="currentColor" width="1em" height="1em". Using this hook, you can customize other attributes such as container, before, after, list_tag, item_tag, item_before, item_after, separator. How to prepend the blog page to all single posts? add_action( 'breadcrumb_block_single_prepend', function ( $post, $breadcrumbs_instance ) { if ( 'post' === $post->post_type ) { $blog_id = get_option( 'page_for_posts'); if ( $blog_id ) { $breadcrumbs_instance->add_item( get_the_title( $blog_id ), get_permalink( $blog_id ) ); } } }, 10, 2 ); If this plugin is useful for you, please do a quick review and rate it on WordPress.org to help us spread the word. I would very much appreciate it. Please check out my other plugins if you’re interested: Content Blocks Builder – Build custom layouts and blocks visually in the Block Editor without needing a code editor, using only core blocks and native Gutenberg features. Meta Field Block – A single block to display custom fields in the Block Editor without coding. It supports ACF, MetaBox, WooCommerce, meta, rest field, shortcode and more. Works everywhere: in the Site Editor (FSE), the Block Editor, inside Query Loop, WooCommerce Product Collection, Term Query blocks, and even in template files. SVG Block – A block to display SVG images as blocks. Useful for images, icons, dividers, and buttons. It allows you to upload SVG images and load them into the icon library. Icon separator – A tiny block just like the core/separator block but with the ability to add an icon. Block Enhancements – Adds practical features to blocks like icons, box shadows, transforms, etc. Counting Number Block – A block to display numbers with a counting effect Better YouTube Embed Block – A block to solve the performance issue with embedded YouTube videos. It can also embed multiple videos and playlists. The plugin is developed using @wordpress/create-block.
Top keywords
- block20×3.45%
- item13×2.25%
- args9×1.55%
- context9×1.55%
- add8×1.38%
- editor7×1.21%
- separator7×1.21%
- blocks6×1.04%
- id6×1.04%
- page6×1.04%
- return6×1.04%
- 'breadcrumb5×0.86%
WP Go Maps Block
The easiest to use Google Maps and Open Layers Map Plugin is now available as a standalone map block! Create a custom map block with high-quality markers and add them to your WordPress posts and pages effortlessly. Perfect for contact pages, business locations, event venues, and more! Map blocks are lightweight and deliver optimal performance, ensuring a seamless experience for your WordPress site. They’re easy to customize, allowing you to quickly add and configure maps to suit your needs without compromising site speed or performance. If you need more features like multiple markers, shapes, and a store locator, our full (free) WP Go Maps plugin might be perfect for you. Block Features Add unlimited map blocks to your posts/pages Choose between Google Maps or OpenLayers for each block Edit your marker directly from the block editor Set marker location by free location search, or by right-clicking on the map preview Preview your map in real time, within the block editor Easy to use and customize without any coding experience Control width, height and alignment of your maps From the team that brought you the most popular Google Maps plugin on WordPress Lightweight for optimal performance No database queries or tables Basic info-window for your marker Control zoom level of your map Support for localization Latest Google Maps API Latest OpenLayers API Already using WP Go Maps? You can still use this block for single locations, as it is fully integrated with both our basic and Pro versions! References We make use of a various libraries and 3rd party service providers in order to render maps in your preferred mapping engine. This section will describe each of these in more detail and when they are used. OpenLayers: Served from a local library file (lib/ol.js & lib/ol.css), provided by OpenLayers. We use this library when you set your block to use OpenLayers (default). You can find the source files on the OpenLayers GitHub. OpenStreetMap: When you select the OpenLayers engine, a default map tile server is used, which is provided by OpenStreetMap. This is a 3rd party service provider that we rely on to render your map. They may also make use of MapBox for some of their assets. Google Maps API: If you decide to use Google Maps as your map engine, we will include the Google Maps API as a 3rd party service provider that we rely on to render your maps. In this case, admin map previews are still rendered by OpenLayers and OpenStreetMap. Nominatim (OpenStreetMap): If you perform an address search within the admin area, we will make use of the OpenStreetMap Nominatim to lookup locations and suggest addresses to you. This is a 3rd party service provider that we rely on for address searches.
Top keywords