web-dev-qa-db-ja.com

抜粋でビデオを表示

それで私は最近私のindex.phpファイルの<?php the_content(); ?><?php the_excerpt(); ?>に変更することによって抜粋を表示するために私のブログページを変更する方法を考え出しました。

私はカスタムの子テーマを使用していますが、残念ながら親21のfunctions.phpファイルを編集して続きを読むためのリンクを修正する必要がありました。これは正しい方法ではありません。私のfunctions.phpの機能はテーマフォルダの中で上書きされていませんでした、そして私が親のfunctions.phpファイルの中の行を削除したとき投稿の内容は消えました! (私はそれが質問1であると思います)

私の本当の質問は、私が抜粋記事にビデオが表示されないようにするための抜粋を表示するようになったときです。ユーザーを混乱させたくないので、これで記事の終わりです。

  1. 親のfunctions.phpを編集しなくても抜粋を読むことができるように、functions.phpファイルを上書きする別の方法はありますか

  2. 抜粋に動画を表示するにはどうすればよいですか。

ありがとう、そして、これが理にかなっていることを明確にする必要があるかどうかを私に教えてください。

3
Marques

the_excerpt()のフィルタリング

あなたがremove_filter( 'get_the_excerpt', 'wp_trim_excerpt' )し、あなた自身のget_the_excerptフィルタを追加するならば、あなたはこれをすることができます。

デフォルトのフィルタ(wp_trim_excerpt())は、それを修正したいだけなら/wp-includes/formatting.phpの2023行目にあります。あなたがする必要があることの範囲は、どのタグがstrip_tags()で許されるかを単に修正することです。

functions.phpをオーバーライドする

functions.phpを上書きすることに関しては、 コーデックス はあなたがする必要があることについてかなり明確です。

更新:これは 良いチュートリアルですthe_excerpt()のタグを許可することについて/

4
mor7ifer

@マルク:私はあなたが参照しているチュートリアルを書きました: プラグインなしでWordPressの抜粋でHTMLタグを保存する方法

追加している「MAIN_CODE」は、twentyelevenテーマの「functions.php」ファイル内の次の関数と競合しています。具体的には、コードの312行目の「twentyeleven_excerpt_length()」です。このフィルタを削除する(またはコメントアウトする)必要があります。

Twentyelevenの "functions.php"ファイルには他の関数があるかもしれません(テストしていないので100%確実ではありません)。

抜粋でビデオを許可することについて、私がこれについてテストしていないコードを書いたとき。 HTML5の<video>タグを使用していますか?あなたがビデオと投稿を共有することができれば、私は見てみることができますそれが動作するかどうかを確認することができます...

お役に立てれば。

Boutros AbiChedid。

1

@Marques: TwentyEleven および TwentyTen テーマについては、私のブログで上記のチュートリアルの "MAIN_CODE"をテストしました。下のリンク:

プラグインなしでWordPressの抜粋にHTMLタグを保存する方法

あなたは正しい、そして私はちょうど "functions.php"ファイルの中の関数をコメントアウトしてもBLOGのメインページに何も変わらないというあなたの観察を確認したいだけです。それで間違いなく、私のコードとテーマの競合があり、ローカルインストールの問題ではありません。私のコードがメインページのこれら2つのテーマでうまく動かなかったのは驚きです。

ただし、アーカイブページの場合、「MAIN_CODE」はTwentytenの意図したとおりに機能しますが、TwentyElevenの機能はありません。 (まだ "functions.php"ファイルの2つの関数 'twentyten_auto_excerpt_more()'と 'twentyten_excerpt_length()'をコメントアウトする必要があります)

私はこれら2つのテーマのために私のコードを特に調査します、そして、もし私が解決策を見つけたら、私は戻ってきます。ブトロス。

0