0

データベース内の特定の post_type で同じタイトルの投稿がいくつあるかをカウントするために、wordpress インストールで次のクエリを実行しています。

$title をエコーすると、正しい情報が表示され、同じタイトルのすべての投稿が取り込まれます。

ただし、以下のクエリでは、投稿が存在するにもかかわらず、出力は「0 行」と表示されます。

以下のクエリではすべて問題ないように見えますか、それとも何か不足していますか?

<?php

$title = get_the_title();
$result = mysql_query("SELECT * FROM wp_posts WHERE post_title='$title'");
$num_rows = mysql_num_rows($result);

echo "$num_rows Rows\n";

?>

乾杯、ダン

4

2 に答える 2

0

次のようにクエリを試してみませんか。

$query = "SELECT * FROM wp_posts WHERE post_title='".$title."'";

また、mysql_関数ではなくPHPPDOを使用することをお勧めします

于 2012-11-08T12:53:17.153 に答える
0

get_the_title(); であることがわかりました。実際には機能しませんでした。代わりに、次を使用して投稿 ID を取得し、次に投稿 ID からタイトルを取得する必要がありました。

$queried_post = get_post($post_id);
$title = $queried_post->post_title;

結果は次のとおりです。

<?php

$queried_post = get_post($post_id);
$title = $queried_post->post_title;
$result = mysql_query("SELECT * FROM wp_posts WHERE post_type='bookings' AND post_title='".$title."'");
$rows = mysql_num_rows($result);

?>

みんな助けてくれてありがとう!

于 2012-11-12T14:50:03.937 に答える