カスタムメイドのツールを使用して、WP 3.01インストールでプログラム的に投稿を更新しています。カスタムのSELECT
クエリを使ってpost_status
をDRAFTからPUBLISHEDにプログラム的に変更することもありますが、これは投稿のパーマリンクを損なうように思えます。
ドラフト状態にあるとき、投稿は以下のリンク構造を持ちます
http://myblog.com/?p=73006
リンク構造を強制的に変更して適切なパーマリンクを生成するための「トリック」がありますか?
スラッグをプログラムで設定する必要があります。 SQLトリガーがトリックを実行できます。あなたがそれを書くときに重複するナメクジを気にするのを忘れないでください。
そうでない場合は、データベースを使用して公開するのではなく、WP APIを呼び出すphpスクリプトを作成します。
WordPressディレクトリのルートに.php
ファイルを作成して、
<?php
require( 'wp-load.php' );
$urunler = array(
'order' => 'ASC',
'post_type' => 'urun',
'post_status' => null,
'numberposts' => -1,
);
$tumurunler = get_posts($urunler);
if ($tumurunler) {
foreach ($tumurunler as $urun) {
$urun->post_name = '';
wp_update_post( $urun ); // Update the post into the database
}
}
そのため、このコードはpost_type=='urun'
のすべての投稿をロードし、$urun->post_name
フィールドを空に設定し(このフィールドは投稿パーマリンクのスラッグを定義します)、wp_update_post()
を呼び出すとWordPressが自動的に値を入力します。 post_type'
を'post'
に、またはpost_type'
を'page'
に変更する場合は、次の行を変更してください。
'post_type' => 'urun',