• Всем привет.

    Хочу обновить значение метабока, который создан плагинм СЕО.

    Когда обновляю его со старницы своего плагина в админке все работает. Но когда это обновление вешаю на событие save_post то ничего не работает.

    в чем может быть дело?

    function save_tft_meta( $post_id ) {
        $slug = 'question';
        //if ( $slug == get_post_type( $post_id ) ) {
            update_post_meta( $post_id, '_yoast_wpseo_opengraph-image', '555555' );
        //}  
    
        // Checkboxes are present if checked, absent if not.
    }
    add_action( 'save_post', 'save_tft_meta' );

    ПС

    никакие данные со страницы поста не передаются. значение поста генерируется внутри функции.

    UPDATE
    не срабатывает именно

    update_post_meta( $post_id, '_yoast_wpseo_opengraph-image', '555555');

    все остально отлично работает, хук срабатывает и в сессию передает значание из этого поля взятое get_post_meta…

    не работает именно update_post_meta

Просмотр 1 ответа (всего 1)
  • Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Предполагаю, что update_post_meta() срабатывает, но значение 555555 затем затирается самим плагином Yoast SEO.

    В плагине сохранение повешено на более позднее действие wp_insert_post, попробуйте вместо save_post использовать его и заодно повысить приоритет, чтобы ваша функция выполнялась позже:

    add_action( 'wp_insert_post', 'save_tft_meta', 11 );

Просмотр 1 ответа (всего 1)

Тема «Обновление метабокса при сохранении поста» закрыта для новых ответов.