我正试图将新发布的帖子的记录放置在一个单独的db表中,除了帖子发布的常规过程之外。
我已经尝试在我的wp-includes
文件夹中进入post.php
,并在function wp_insert_post()
内添加查询,但这会添加Auto Drafts
的记录,每次更新时。
我还尝试在同一文件的function wp_publish_post()
函数中包含我的插入语句。
在这些函数中是否有一个特定的部分,或者可能是一个完全不同的文件,我应该将我的INSERT
语句放入每次发布新帖子时添加记录?
导航到位于wp-includes
文件夹中的post.php
文件。
找到wp_insert_post()
函数,并在return
语句之前使用此代码作为SQL查询。
if ($postarr['post_status'] == 'publish') {
try {
$db = new PDO('mysql:dbname=YOURDBNAME;host=YOURHOST;charset=utf8',
'YOURUSERNAME',
'YOURPASSWORD');
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_SILENT);
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
}
catch(PDOException $ex) {
echo "did not connect...";
}
$sth = $db->prepare("INSERT INTO YourTable VALUES (?, ?, 0)");
$sth->execute(array($value1, $value2));
}