Добавить заголовок сообщения перед публикацией сообщения WordPress

#php #wordpress

#php #wordpress

Вопрос:

Я хочу добавить свои заголовки WordPress, чтобы в них был некоторый статический текст перед публикацией. Поскольку мои сообщения публикуются непосредственно в социальных сетях, когда они публикуются, я хочу, чтобы это происходило перед публикацией.. Я пробовал несколько подходов, но ни один из них не работает. Это вообще не работает

 function save_title( $title ){
        $text = '#ad #Myblog';
    $title = $title.$text;
}
add_action('save_post', 'save_title');
 

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

 function update_new_post_title( $data ) {
   $title = '#ad '.$_POST[ 'title' ];
    $data['post_title'] =  $title;
    return $data;
}
add_filter( 'wp_insert_post_data' , 'update_new_post_title' , '99', 1 );
 

Я тоже пытался to_title , но это просто обновило заголовок в WordPress. Не в сообщении перед публикацией.
Не уверен, действительно ли существует способ захвата динамического текста, введенного в post и append. Пожалуйста, помогите.

Ответ №1:

Убедитесь, что https://wordpress.stackexchange.com/a/35993

 add_filter( 'wp_insert_post_data' , 'filter_post_data' , '99', 2 );

function filter_post_data( $data , $postarr ) {
    // Change post title
    if (!strpos($data['post_title'], '_suffix')
        $data['post_title'] .= '_suffix';
    return $data;
}
 

Комментарии:

1. Это не работает, поскольку оно обновляет его, добавляя текст несколько раз всякий раз, когда сообщение обновляется или появляется новое

2. Просто проверьте, содержит ли заголовок текст, и если нет, добавьте — см. Мою правку

3. Он по-прежнему добавляет его дважды.. Как только я начинаю новое сообщение, оно вставляет его, предполагая, что в поле нет текста. Он вставляет его снова, когда я нажимаю кнопку публикации

4. Я пытаюсь дать вам несколько ссылок, поскольку у меня нет возможности его протестировать, проверьте следующую ссылку, они меняют slug, но вы можете просто настроить его для изменения заголовка wordpress.stackexchange.com/questions/105926 /…