web-dev-qa-db-ja.com

登録後にカスタム投稿タイプを階層に変更

この前の質問と非常によく似ています: カスタム投稿タイプが登録された後の 'rewrite'引数の変更

私はMarketPress製品を階層的にしようとしています - 私はプラグインファイルをハッキングすることでそれをすることができます、しかし私ができるならそれらから離れたいです。

カスタム投稿タイプの引数を登録した後、内部の書き換えがすべて行われる前に引数を変更することは可能ですか?

更新:これが解決策です

そして、それが通常起こるように、私は質問を投稿した数分後に答えを見つけます...

だから私の問題を解決するために私は私のテーマのfunctions.phpファイルで私がしたことがあります:

function modify_products() {
    if ( post_type_exists( 'product' ) ) {

        /* Give products hierarchy (for house plans) */
        global $wp_post_types, $wp_rewrite;
        $wp_post_types['product']->hierarchical = true;
        $args = $wp_post_types['product'];
        $wp_rewrite->add_rewrite_tag("%product%", '(.+?)', $args->query_var ? "{$args->query_var}=" : "post_type=product&name=");
        add_post_type_support('product','page-attributes');
    }
}
add_action( 'init', 'modify_products', 1 );

すべてがうまくいく:階層、書き換えなど。

9
ragulka

そして、それが通常起こるように、私は質問を投稿した数分後に答えを見つけます...

だから私の問題を解決するために私は私のテーマのfunctions.phpファイルで私がしたことがあります:

function modify_products() {
    if ( post_type_exists( 'product' ) ) {

        /* Give products hierarchy (for house plans) */
        global $wp_post_types, $wp_rewrite;
        $wp_post_types['product']->hierarchical = true;
        $args = $wp_post_types['product'];
        $wp_rewrite->add_rewrite_tag("%product%", '(.+?)', $args->query_var ? "{$args->query_var}=" : "post_type=product&name=");
        add_post_type_support('product','page-attributes');
    }
}
add_action( 'init', 'modify_products', 1 );

すべてがうまくいく:階層、書き換えなど。

10
ragulka