// Slugs.
                    add_filter( 'pre_term_slug', 'sanitize_title' );
                    add_filter( 'wp_insert_post_data', '_wp_customize_changeset_filter_insert_post_data', 10, 2 );
                    
                    // Mime types.
                    add_filter( 'pre_post_mime_type', 'sanitize_mime_type' );
                    add_filter( 'post_mime_type', 'sanitize_mime_type' );
                    
                    // Meta.
                    add_filter( 'register_meta_args', '_wp_register_meta_args_allowed_list', 10, 2 );
                    
                    // Counts.
                    add_action( 'admin_init', 'wp_schedule_update_user_counts' );
                    add_action( 'wp_update_user_counts', 'wp_schedule_update_user_counts', 10, 0 );
                    foreach ( array( 'user_register', 'deleted_user' ) as $action ) {
                        add_action( $action, 'wp_maybe_update_user_counts', 10, 0 );
                    }

                    // Comment meta.
                    add_action( 'added_comment_meta', 'wp_cache_set_comments_last_changed' );
                    add_action( 'updated_comment_meta', 'wp_cache_set_comments_last_changed' );
                    add_action( 'deleted_comment_meta', 'wp_cache_set_comments_last_changed' );
                    
                    // Post meta.
                    add_action( 'added_post_meta', 'wp_cache_set_posts_last_changed' );
                    add_action( 'updated_post_meta', 'wp_cache_set_posts_last_changed' );
                    add_action( 'deleted_post_meta', 'wp_cache_set_posts_last_changed' );

                    $script_handle = $metadata[ $field_name ];
                    if ( is_array( $script_handle ) ) {
                        if ( empty( $script_handle[ $index ] ) ) {
                            return false;
                        }
                        $script_handle = $script_handle[ $index ];
                    }
                
                    $script_path = remove_block_asset_path_prefix( $script_handle );
                    if ( $script_handle === $script_path ) {
                        return $script_handle;
                    }
                
                    $script_handle     = generate_block_asset_handle( $metadata['name'], $field_name, $index );
                    $script_asset_path = wp_normalize_path(
                        realpath(
                            dirname( $metadata['file'] ) . '/' .
                            substr_replace( $script_path, '.asset.php', - strlen( '.js' ) )
                        )
                    );
                    
                    // Term meta.
                    add_action( 'added_term_meta', 'wp_cache_set_terms_last_changed' );
                    add_action( 'updated_term_meta', 'wp_cache_set_terms_last_changed' );
                    add_action( 'deleted_term_meta', 'wp_cache_set_terms_last_changed' );
                    add_filter( 'get_term_metadata', 'wp_check_term_meta_support_prefilter' );
                    add_filter( 'add_term_metadata', 'wp_check_term_meta_support_prefilter' );
                    add_filter( 'update_term_metadata', 'wp_check_term_meta_support_prefilter' );
                    add_filter( 'delete_term_metadata', 'wp_check_term_meta_support_prefilter' );
                    add_filter( 'get_term_metadata_by_mid', 'wp_check_term_meta_support_prefilter' );
                    add_filter( 'update_term_metadata_by_mid', 'wp_check_term_meta_support_prefilter' );
                    add_filter( 'delete_term_metadata_by_mid', 'wp_check_term_meta_support_prefilter' );
                    add_filter( 'update_term_metadata_cache', 'wp_check_term_meta_support_prefilter' );

                    foreach ( $property_mappings as $key => $mapped_key ) {
                        if ( isset( $metadata[ $key ] ) ) {
                            $settings[ $mapped_key ] = $metadata[ $key ];
                            if ( $textdomain && isset( $i18n_schema->$key ) ) {
                                $settings[ $mapped_key ] = translate_settings_using_i18n_schema( $i18n_schema->$key );
                            }
                        }
                    }
            

WordPress
Done Right!

Hire a team of WordPress experts: consultancy and troubleshooting, theme and plugin development, performance optimization, integrations, and more.

Featured Clients

We work with great clients across the globe.

Expertise

We develop WordPress-powered web applications since 2008.

Advanced Custom Fields

Complex data models and fields.

Official partner
WPML

Multilinugal SEO-friendly experience.

Custom Post Type: UI

Custom taxonomies & post types.

Yoast

All-in-one SEO ultimate tool.

WooCommerce

Most popular ecommerce platform.

WP All Import

Import & export any data you need.

BuddyPress

Community & social websites.

W3 Total Cache

Lightning-fast websites.

Solutions

We build open source digital platforms to help businesses grow.

Theme Development

Custom theme development. Best practices. Expert frontend engineers.

Plugin Development

Development of a custom plugin fitting exactly your business needs.

Filters & Handlers Development

Theme and plugins modification to handle your website's specific events.

Shortcode Development

Shortcode development to fit exactly your content and markup requirements.

Theme Localization

Theme code modifications, string translations setup, WP Loop modifications for your i18n.

Plugins Localization

Plugin code modifications. POT files.

Interface localization

Localization of your custom admin interfaces. POT files.

ACF fields localization

Localization of your ACF fields.

Website Performance

Performance optimization. Lazy load setup. CDN setup. Cloudflare configuration.

Google Page Speed Results

Core Web Vitals issues fix. Google Page Speed Test results improvement.

Code and Database Queries Refactoring

Code bottleneck investigation and refactoring. DB queries optimization.

Image Optimization

Server setup for on-the-fly image compressiona dn optimization.

Titles & Meta tags

Dynamics title tags and meta tags based on content/taxonomy and prebuilt patterns.

Multilingual SEO

SEO setup for multilingual websites. Yoast or AIOSEO multilingual setup.

Structured Data for SEO

Schema.org and/or JSON-LD setup. Dynamic patterns for eCommerce, events, books, etc.

AMP

AMP version development. JS & CSS modifications.

Payment API Integration

Development of custom payment gateways. Integration and modification of existing gateays.

Shipping API Integration

Development of easy turnkey solutions to simplify your shipping processes.

CRM API Integrations

Integration with your existing CRM, accounting software, email marketing software, and more.

Custom Search

Advanced ecommerce search platform. Autosugegstions. Smart rankings. Personalization.

REST API Customizations

Customization of the built-in WordPress REST API service.

Mobile API

WordPress-as-a-Backend for your mobile app.

MarTech Integrations

Integration with your existing MarTech tools: Salesforce, Hubspot, Marketo, Mailchimp, etc.

Analytics Integrations

Custom events, goals, conversions. Google Tag Manager setup.

Emergency WordPress Help

Fixing code-related fatal errors. Malware removal.

Updates

Core updates. Plugin updates. Version control. Staging & testing.

Healthchecks & Monitoring

Detecting and fixing of configutation errors. Server monitoring with Zabbix, Grafana.

Backups & Disaster Recovery Strategy

Cloud backups. Scheduled backups. DRS (Disaster Recovery Strategy).

Turnkey Replatforming

Planning and managing your migration from start to finish.

Content Migration

Porting all your existing content, including images, text and custom data.

eCommerce Migration.

Porting your existing products, categories, prices, SKU variations, filters.

Users Migration

Migrating all user information (including generated content). LDAP integrations.

Featured Projects

Check out some of our featured projects and find out
how we solve business problems through WordPress.

About Us

Team of seasoned WordPress experts behind each project.

15 years
in industry
14 years experience
in WordPress development
100+ projects
finished

Our Company

AvroraGlobal LLP

(Reg.No. 230540043941)

15, Zhukova street, suite 2

Oral, Republic of Kazakhstan

ZIP 090000

Contact Us

mail@auroraglobal.kz

+44 20 8089 9042

Discuss Your Project

Tech Stack

Reliable technologies for predictable results.

Backend & Databases

PHP, Laravel, MySQL, MariaDB, Clickhouse

Frontend

HTML, CSS, Javascript, Typescript, jQuery, Vue, Ionic

Server

nginx, Apache, LiteSpeed, Zabbix

QA

Manual, PHPUnit, JMeter, Browserstack

API & Integrations

Postman, REST API, SOAP, XML, JSON

CI/CD

Github, Github Actions, Docker, Docker Compose, WP CLI

Cloud & Serverless

AWS, Google Cloud Platform, Digital Ocean, CloudFlare

MarTech Tools

Pardot, Salesforce, Hubspot, Marketo, Mailchimp, Mailgun

Analytics

Google Analytics, Google Data Studio, Google Tag Manager