web-dev-qa-db-ja.com

Drupal 7-最初の<p>タグの後にティーザートリムが終了します。続行するにはどうすればよいですか?

ティーザーで400文字にトリミングしたいのですが、最初の<p>タグを閉じるとトリミングが停止します。この動作をオーバーライドしてティーザーを最初の400文字にトリミングする方法はありますか?

ティーザーの「表示の管理」オプションを編集して400に設定し、古いコンテンツを編集して保存しましたが、最初の<p>タグが終了した後もティーザーが途切れています。

本文の追加を検討しましたが、必要なボックス内の書式設定は許可されていません。どんな助けでも大歓迎です。

6
ril44

私は今日この問題を見てきましたが、私が理解しているところでは、使用されている関数は text_summary であり、これは段落のチャンクで機能します。最初の段落の後にブレークポイントがあり、そこで停止するため、2番目の段落は表示されません。

私は現在 スマートトリムモジュール を使用しています。これにより、単語によるトリミングが可能になり、ノードのティーザービューの一貫したテキストブロックの望ましい結果が得られます。

7
Samudradaka

このソリューションは、コンテンツを表示するために Views を使用している場合に機能します(そうでない場合は、ビューを使用して他の多くの利点を得るか、スマートトリムをインストールする場合に適しています。ビューは複雑ですが、学習に時間をかける必要があります)。

  1. フィールドの「フォーマッター」として「要約またはトリミング」を選択します
  2. 「トリムの長さ」の値を非常に高く設定します-トリムしたいすべての要素の全体を常にカバーするのに十分な大きさです(例:1500)
  3. 書き換え設定」の下で、「このフィールドを最大長にトリミングする」を選択します。 [フィールドにHTMLを含める]にチェックを入れ、[単語の境界でのみトリム]をオンにして、real文字数を[最大長]に入力します(例:200)。 「省略記号を追加」をチェックしたままにしておくことをお勧めします。これにより、不完全なセンテンスが間違いのように見えなくなります。

したがって、この例では、Drupalは、要約がある場合は要約を選択し、ない場合は本文を選択します。1500文字がカウントされ、不完全なHTML要素は切り取られます。記事に地獄の非常に長い非常識な段落が含まれていない限り、これは少なくとも200文字になります。次に、ビューのフィルターが起動し、最も近い単語で200文字にトリミングします。これにより、表示するオプションを失うことなく、実際に必要な長さが得られます。要約がある場合は、それをトリミングしたバージョン。

「要約またはトリミング」または「トリミング」を使用すると、トリミングはHTML要素全体に基づいて行われるため、長い段落を完全に切り取ることができます。長い紹介段落があると、切り詰められたフィールドが完全に空で表示されることがあります。これで解決します。

コンテンツタイプ->ディスプレイの管理->ティーザー-> [本文]フィールドの下に、[フォーマット]ドロップダウンリストがあります。デフォルトでは「要約またはトリミング」に設定されています。これを「トリミング」に設定し、トリミングする長さを選択します。

それでも問題が解決しない場合は、おそらく Teaser by type モジュールを試すことができます。

0
Varshith