Viewsでティザーを一覧するとページのレイアウトが崩れることがある

カテゴリ コンテンツの作成 コアバージョン 7.26 関連モジュール CKEditor Views

Viewsでティザーを一覧するとページのレイアウトが崩れることがあります。
原因は?
関連するモジュール/設定は以下のとおりです。
1.Viewsで一覧を作成する。
2.Viewsの設定
 1)フォーマット:Unformatted list
 2)表示:コンテンツ|ティザー
3.該当フィールドの設定
 1)フィールド:Body
 2)フィールドタイプ:長い文章と概要
 3)ウィジェット:テキストエリアと概要
 4)概要入力:ON
 5)テキスト処理:フィールた~されたテキスト
3.コンテンツ表示設定
 1)対象ビュー:ティーザー
 2)対象フィールド設定:
  ・ラベル:非表示
  ・フォーマット:概要か切り詰め
   長さを整える:600
4.コンテンツ入力時
 1)Full htmlにて入力
 2)CKEditorのSeparate the teaser and body of this content(ツールボタン)を利用

コメント

ユーザー actbrain の写真

設定というより、コンテンツそのものの疑いが強いです。

以下の手順で問題部分を見つけてください。

1.一覧中に(ティーザー)表示されているコンテンツのどのあたりで崩れ始めているか確認して下さい。

2.ブラウザの「ソースを表示」または「要素を確認」等でhtmlを見ると、どこで崩れ始めているかわかります。
(Viewsが出力するコンテンツ単位のブロックがどこかで崩れているはずです)

3.該当するコンテンツがわかったら、そのコンテンツの[編集]ページに入ります。

4.該当フィールドのエディタボタン(Source)をクリックし、Source表示にします。
(Sourceボタンが表示されていない場合は、CKEditorの設定でSourceボタンを有効にします)

5.「<!--break-->」を探します
そうすると「<!--break-->」が「<div>...</div>」で囲まれているのがわかります。
(これが その通りならビンゴです)

「<!--break-->」はDrupalの本文内区切りとして機能し、それ以前はTeaserとして扱われる便利なものですが、「<div><!--break--></div>」となっているせいで、「最後の</div>」のみが残り、ページ全体の<div>のネスティングを破壊しています。
(CKEditorは「<div><!--break--></div>」ではダメなようです)

他のコンテンツを見てみると「<p><!--break--></p>」となっており、事なきを得ています。

よく見ると問題がでているコンテンツにおいては、他の部分も<p>が使われず<div>になっています。何かの拍子に そうなったのかもしれません。
(通常CKEditorでは改行で<p>が使われ、<div>は あえてそうさしなければ採用されません)

で、とりあえず、
<div><!--break--></div>
となっている部分を、
<p><!--break--></p>
とすることで解消しますので、[保存]後、確認してみてください。

ページ

OTHER FAQ

Drupal開発・運用の疑問/質問の答えはここに

無料ユーザー登録すると質問できます。

カテゴリ Core Ver. 関連モジュール タイトル
フォーム 8.7.x Webform WebformのCheckboxの要素にて表記の変更
コンテンツの作成 8.7.x CkEditor Creditorエディタ内に Colorboxポップアップ を簡単に挿入する方法
アップデート 8.7.2 menu drupal-core 8.7.2にupdateしたところ
Viewsプログラミング 8.6.x Views Drupal8 Viewsの動的キャッシュをクリアする方法
フォーム 8.6.x JavaScript 特定のformに動的にJavaScriptをロードする方法
Commerce2 8.6.x Commerce Order Commerceで注文情報から全Itemを得る方法
Commerce2 8.6.x Commerce Shipment Commerceで配送情報を得る方法
Commerce 8.6.x Commerce Payment Order Commerceで歴代購入数/金額を集計する方法
コンテンツの管理 8.6.x Commerce Commerce orderからすべての商品名を取得する方法
サイトの環境設定 8.6.x Simhony Yaml yamlファイルを読み込む方法
フォーム 8.6.x JavaScript 特定のformにJavaScriptを紐付ける方法
Commerce 8.6.x Commerce Payment Gateway オリジナルCommerce決済モジュール(Offsite)で決済サーバーへのPOST時のエンコードを変更する方法
コンテンツの管理 8.5.x Field File コンテンツのフィールドの表示について
Libraries 8.5.x Libraries Commerceで外部JavaScriptをテスト/本番で読み分ける方法
JavaScript 8.5.x PHP Commerce決済モジュール設定をJavaScriptにデータに渡す方法
サイトの構築 8.3x Webform Webformモジュール メールアドレスの入力ミス確認
Viewsプログラミング 8.4x Views drupal8におけるViewsプログラミング
サイト情報 8.4x JavaScript JavaScriptに変数を渡す方法
テーマ 8.4x hook_preprocess_html bodyタグにnode idやaliasのClassを追加する方法
コンテンツの作成 8.4x json jQueryにsonで渡す方法

ページ