从post(WordPress)的h1标签创建MYSQL中的标题

时间:2014-01-26 04:47:43

标签: php html mysql wordpress title

我将一个网站导入到Wordpress,该网站没有与帖子关联的标题。每个帖子都有h1标签......

任何人都可以告诉我进入MYSQL的最佳方式并编写一些脚本,根据每个帖子的h1标签自动生成每个帖子的标题???

最后我需要能够在WordPress仪表板的帖子部分看到这些标题。

以下代码是根据你的回答安德鲁。我创建了一个名为createtiles.php的文件,并将其包含在我的rrot目录中。不知道发生了什么,但当我在WordPress仪表板中查看我的帖子部分时,我仍然看到(无标题)。

<?php
$link = mysql_connect('localhost', 'user', 'pass');
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';

$all_posts = mysql_connect("SELECT * FROM wp_posts");

while ($item = mysql_fetch_assoc($all_posts))

{ $pid = $item['post_id'];

$new_title = substr($item['post_content'],0,70);

mysql_query("UPDATE wp_posts SET post_title='".$new_title."'");
}
mysql_close($link);
?>

(我的部分帖子只有h1标签,没有其他内容。)

2 个答案:

答案 0 :(得分:0)

嗯,只是快速草稿而没有为你完成任何工作。

$title = mysql_fetch_assoc(mysql_query("SELECT post_content, post_title, post_id FROM wp_posts");

 foreach($title as $final_title) {
   $post_id = $final_title['post_id'];
   $post_content = $final_title['post_content'];

   $final_content = '<h1>'.$final_title['post_title'].'</h1><br /><br />'.$post_content;

   $q = mysql_query("UPDATE wp_posts SET post_content='".$final_content."'");
 }

这就是她写的全部内容。我没有为你做太多的工作,但这绝对是你要走的路。投票。

答案 1 :(得分:0)

请不要注意我的其他答案。它落后于你想要的东西。

您需要使用http://us2.php.net/substr方法从标题中抓取一定数量的字符。我会从你的帖子中获取前26个字母,然后更新标题。

你需要做的就是这样。

$all_posts = mysql_query("SELECT * FROM wp_posts");

while ($item = mysql_fetch_assoc($all_posts)) {
      $pid = $item['post_id'];
      $new_title = substr($item['post_content'],0,26);

      mysql_query("UPDATE wp_posts SET post_title='".$new_title."'");
}

现在这就是她写的全部内容。 ;)