1

すべてのページでコメントを有効/無効にする方法を知っています。しかし、UIを使用せずに、どうすればいくつかだけを有効にできますか。functions.php私はただ行きたい

if($this_is_a_page_i_want_comments_on) { enable_comments(); }

enable_comments();存在しません、これは私が助けを必要としている部分です。

WordPress Adminを使用してこれを行うには、すべてのページでコメントを許可してから、各ページに移動し、不要な場所でコメントを無効にします。ただし、これには時間がかかりすぎます。

PS私はGenesisフレームワークを使用しています。

4

2 に答える 2

2

単にフィルターにフックするだけcomments_openです:)関数がどのように機能するかをソースで調べると、関数が問題の投稿を取得し、フィルターを介してその応答を実行することがわかります。これをオーバーライドする関数の例を次に示します。comments_open()comments_open

function my_override_comments_open( $open ) {
    if ( $this_is_a_page_i_want_comments_on ) {
        $open = true;
    }
    return $open;
}
add_filter('comments_open', 'my_override_comments_open', 1000);

コメントを有効にしたいページを特定する方法を知っていると思います - それはあなた次第です。

PP: Genesis で動作するかどうかはわかりません (動作すると思いますが)。

于 2012-11-29T21:49:51.767 に答える
1
if (is_single('page_name_here') || is_single('other_page')) {
    // Show the comment form here
}

より良い方法があるかどうかわからない、それが私の解決策です!

于 2012-11-29T21:42:24.493 に答える