[eccube3]新着情報のカスタマイズについて

ここに回答はない

デフォルトテーマ(初期)での処理

ECCUBE3のデフォルトテーマでは新着情報はトップページに設置されていて、こんな感じ。

管理画面で登録した新着情報を全て呼び出し。
js(jQuery)で最新の5件を表示(≒6件目以上を非表示)。
「もっと見る」を押すと5件単位で追加表示。
全部表示されたら「もっと見る」は非表示。

担当者出てこいってレベルで雑だろうよ。

jsの処理で要素を非表示にする場合、その反映は読み込み後だから一瞬は確実にページが長くなるんですよ。ズレるんだわ。ダメだよそれ。
全部非表示にしたのを表示したほうがまだマシだわ。
っていうかcssで:nth-child()とか使ってやっとけよ。
で、表示しまくるのは良いんだけど非表示はないからページがどんどん長くなる。どこに向かってるんだって話。

htmlを覗いてみたら<dl>で書いてるのは良いんだけど、1記事毎に<dl>を閉じてるのは、それは違うんじゃねえのっていうね。じゃあ<div>でやればいいじゃん。まあ簡単にイジれる部分だけども。

システムの欠点

個人的に一番いいと思う新着情報の掲載は、最新の○件をトップページに表示して、バックナンバーは別ページに逃がすっていう手法。
珍しくないどころかほぼ当然みたいな感じのやつですよね。

ECCUBE3には「○件を表示」って機能がない。
システムに手を入れる必要がある。
Controllerをいじれば制御というか指定はできる。

EC-CUBE3.0 新着情報ブロックのカスタマイズ方法 – TetraThemesブログ

でも数を制限したら今度は全部表示ができなくなるから、「○件を表示」用のやつを新しく追加する作業をしないといけない。
別環境で構築して本番に移すってなったとき、ここはテンプレに含まれないから別でやらないといけない。ディレクトリ覗かないとわかんないよこれ、抜けがあっても仕方ないだろこれ。超だるい。

作った人っていうかゴーサイン出した人、ひょっとしてアホじゃないかな。

今気がついたけどnews.twigに書いてあるjs、「listLenght」じゃなくて「listLength」なんじゃないの

コメント

タイトルとURLをコピーしました