Включить заголовок сообщения Wordpress в замену SQL

Мне нужно что-то похожее на это:

$titulo = get_the_title( $post_id );
update wp_posts set post_content =
replace(post_content,'>Episódio','>$titulo Episódio');

Я знаю, что это неправильная функция, но это способ продемонстрировать то, что мне нужно. Мне нужно получить заголовок wordpress и использовать с функцией замены SQL

Можете ли вы четко объяснить, что вы хотите заменить?

Outsource WordPress 10.08.2018 16:45

создать переменную с правильным заголовком и выполнить запрос. Вы на самом деле не выполняете запрос в своем примере

Chad K 10.08.2018 16:48

Мне нужно включить заголовок wordpress в строку замены. Я не знаю, как правильно это сделать, поэтому я проиллюстрировал это на Javascript.

Alex Siqueira 10.08.2018 16:49
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
3
65
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Сделайте резервную копию вашей базы данных, прежде чем пытаться это сделать. Добавьте это в файл functions.php вашей темы, запустить только один раз и удалить. Обратите внимание, что это заменит все вхождения «Episodio» на «[заголовок сообщения] Episodio». Держите FTP под рукой, так как вы не сможете получить доступ к «functions.php» перед удалением этого кода.

<?php
function replace_string()
{
    global $wpdb;
    $table_name = $wpdb->prefix . "posts";

    $results = $wpdb->get_results ( "SELECT *  FROM  $table_name  ORDER BY ID" );
    foreach ( $results as $postobj )
    {
        $post_content = str_replace( 'Episodio', $postobj->post_title.' Episodio', $postobj->post_content);

        $selectd = "UPDATE {$table_name} SET `post_content` = '".$post_content."' WHERE ID='".$postobj->ID."'";
        $wpdb->get_results($selectd);
    }
    die();
}
add_action( 'after_setup_theme', 'replace_string' );
?>

Приведенный выше код обновит содержимое конкретного сообщения в базе данных - что вы хотите вернуть?

Outsource WordPress 10.08.2018 20:13

Если вы снова обновите страницу, вы увидите обновленное содержимое. Убедитесь, что у вас есть правильные строки «найти» и «заменить».

Outsource WordPress 10.08.2018 20:17

Есть несколько сообщений с термином "> Episodio". Я активировал журнал ошибок Wordpress: Уведомление PHP: неопределенная переменная: post_id

Alex Siqueira 10.08.2018 20:20

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

Outsource WordPress 10.08.2018 20:23

Хорошо, индивидуальный заголовок сообщения

Alex Siqueira 10.08.2018 20:24

Проверьте мой обновленный ответ и не пытайтесь, если у вас нет резервной копии базы данных или FTP.

Outsource WordPress 10.08.2018 21:08

Спасибо, ты потрясающий!

Alex Siqueira 10.08.2018 23:43

Другие вопросы по теме