WPML
Статус
Открыто
Заявлено для
WPML Multilingual CMS 4.6.13
Связанный плагин/тема
Rank Math SEO
Теги темы
Compatibility

Обзор проблемы

Когда в WPML включен параметр Использовать каталог для языка по умолчанию, отправка URL-адресов в Bing из плагинов IndexNow или Rank Math SEO завершается сбоем, при этом отображается ошибка «Invalid URL».

Обходное решение

Пожалуйста, перед продолжением убедитесь, что у Вас есть полная резервная копия сайта.

Для IndexNow:


  • Откройте файл functions.php Вашей темы оформления.

  • Добавьте следующий фрагмент кода:
    function bing_wpml_remove_homefilter() {
    	if ( defined( 'REST_REQUEST' ) && REST_REQUEST && isset( $_SERVER['REQUEST_URI'] ) ) {
    		$request_uri = $_SERVER['REQUEST_URI'];
    		if ( strpos( $request_uri, 'submitUrl' ) !== false ||
    		     strpos( $request_uri, 'allSubmissions' ) !== false ) {
    			global $wp_filter;
    			if ( isset( $wp_filter['home_url']->callbacks[-10] ) ) {
    				foreach ( $wp_filter['home_url']->callbacks[-10] as $key => $value ) {
    					if ( str_contains( $key, 'home_url_filter' ) ) {
    						remove_filter( 'home_url', $key, -10 );
    					}
    				}
    			}
    		}
    	}
    }
    
    add_action( 'rest_api_init', 'bing_wpml_remove_homefilter' );

Для Rank Math SEO:


  • Откройте файл functions.php Вашей темы оформления.

  • Замените:
    function custom_remove_home_url_filter_on_cmb2_admin_init_for_rm_giapi() {
    	if ( defined( 'DOING_AJAX' ) && DOING_AJAX && isset( $_POST['action'] ) && $_POST['action'] === 'rm_giapi' ) {
    		global $wp_filter;
    
    	if ( isset( $wp_filter['home_url']->callbacks[-10] ) ) {
    			foreach ( $wp_filter['home_url']->callbacks[-10] as $key => $value ) {
    					if ( str_contains( $key, 'home_url_filter' ) ) {
    					remove_filter( 'home_url', $key, -10 );
    				}
    			}
    		}
    	}
    }
    add_action( 'cmb2_admin_init', 'custom_remove_home_url_filter_on_cmb2_admin_init_for_rm_giapi' );

Все известные проблемы →