0

いくつかのカスタム投稿タイプ (CPT) を作成する Wordpress プラグインを作成しています。検索結果に表示する必要がある独自のカスタム フィールドがあるため、検索結果の出力をカスタマイズする必要があります。

そのために独自のテーマを作成する必要がありますか、それともプラグイン コードでこれを解決するためのフック (または他の方法) がありますか?

4

2 に答える 2

1

次の 4 つの可能性があります。

  1. 新しい ()テーマを作成する
  2. フィルターを使用して検索テンプレートを上書きする( template_include)
  3. クライアント側のコードを使用して外観を変更する (CSS / JavaScript、不十分な回避策)
  4. フックthe_contentまたはthe_excerpt

search.php最も簡単な方法は、インストールしたテーマのファイルをコピーして、ニーズを満たすように変更することです。次に、最初または2番目の方法を使用してフックできます。1 つ目は子テーマを作成する必要があり、2 つ目はプラグインを作成する必要があります。後者はより複雑になる可能性があるため、テーマを作成することをお勧めします (説明については、子テーマのテンプレート ファイルを参照してください)。

于 2013-11-03T17:51:00.203 に答える
1

フックしget_the_contentget_the_excerptフィルタリングし、テストしis_search()て、戻り値を変更する必要があるかどうかを確認できます。

テストされていませんが、これはアイデアです:

add_filter( 'get_the_excerpt', 'my_search_excerpt' );
add_filter( 'get_the_content', 'my_search_excerpt' );

function my_search_excerpt( $content ) {
    if ( is_search() ) 
        $content = 'This is a search excerpt for ' . get_the_title();
        // maybe add a read more link
        // also, you can use global $post to access the current search result
    }
    return $content;
}
于 2013-11-03T17:49:51.337 に答える