サポート » 使い方全般 » 投稿の記事をカスタム投稿タイプに変更可能か?

  • 解決済 fjsk

    (@fjsk)


    お世話になっております。

    投稿に掲載している記事で、1つのカテゴリだけが多くなったので
    管理上、そのカテゴリだけをカスタム投稿タイプでまとめたいと思うのですが
    新しくカスタム投稿タイプを作って、そこに投稿の記事をそのまま移行させることは可能でしょうか?過去記事を見ると「pTypeConverter」というプラグインを使うと可能のようですが、一度きりなので、手作業で出来るものであればそちらで出来ればと思います。

    ご教授下さいませ。宜しくお願い致します。

5件の返信を表示中 - 1 - 5件目 (全5件中)
  • モデレーター gatespace

    (@gatespace)

    サーバー上でmysqlコマンドで実行する方法
    http://memo.dogmap.jp/2012/11/28/wordpress-replace-post-type/

    トピック投稿者 fjsk

    (@fjsk)

    > gatespace さま

    ご返信有難うございました!早速、

    update bbb_posts
    set post_type = 'xxx'
    where post_type = 'post'
    and exists
    (select object_id
    from bbb_term_taxonomy as t
    inner join bbb_relationships as r on t.term_taxonomy_id = r.term_taxonomy_id
    where t.term_id = 111
    and r.object_id = bbb_posts.ID);

    (aaa.bbb.111.xxxは自分の環境に変えました)
    と実行してみましたが
    Table ‘aaa.bbb_relationships’ doesn’t exist
    となってしまい、動作しませんでした。

    そこで、DB上の全テーブルをrelationshipsで検索しましたが
    その項目自体ありませんでしたが、これは現在のWordPressでは
    無くなってしまったのでしょうか?

    モデレーター gatespace

    (@gatespace)

    wp_term_taxonomy とか wp_relationships とか wp_posts とか、どう考えても替えてはいけないところを替えてるような
    (テーブルの名前ですよ)

    set post_type = ‘photo’ と t.term_id = 4 だけ替えればいいのでは?

    間違えてるのは、リンク先のサイトの方です。wp_relationships になってますが、正しくは、wp_term_relationships です。fjsk さんの場合は、aaa がデータベース名、bbb_ がテーブル・プリフィクスでしょう。

    たぶん、bbb_relationships を bbb_term_relationships に変えると、うまく動作すると思いますが、サブクエリ使ってるので、莫大な数の投稿があると、ちょっと遅いかも。

    トピック投稿者 fjsk

    (@fjsk)

    > gatespace さま
    > kjmtsh さま

    ご返信遅くなりまして、誠にスミマセンでした!
    wp_は kjmtsh さまがご指摘のとおり、テーブルプリフィックスで
    私は変更しているので、自分の環境に置き換えました。

    そして、kjmtsh さまがご教授下さったように
    bbb_relationships を bbb_term_relationships に変えると
    上手く動作しました!数百件でしたので一瞬で終わりました。
    (relationshipsでDB検索したのに見つけられなかった…スミマセン)

    最初、一件ずつ移行しないといけないのかと億劫でしたが
    1発で移行出来まして、お二方共、とても有益な情報を有難うございました!

5件の返信を表示中 - 1 - 5件目 (全5件中)
  • トピック「投稿の記事をカスタム投稿タイプに変更可能か?」には新たに返信することはできません。