1

joomla 3 では、特定のカテゴリのカテゴリをアルファベット順で読み込むことができます。

以下のようなアルファベットバーを表示したい私は作成して編集に入れました

レイアウト/joomla/content/category-default.php

| | あ | ビ | シー | D | え | ふ | ガ | ひ | 私 | 私 | J | ケイ | 中 | み | ん | お | ぴ | 質問....

カテゴリは次のように表示されます

りんご

美術

B

朝ごはん

...

バーのアルファベットをクリックすると、リストの特定の領域 (ID) に移動する必要があります。

それらのカテゴリにグループ化してID付きの見出しを配置する方法と、joomlaファイルのどこで作業する必要があるかを知っている場合は、誰かに教えてください。

4

2 に答える 2

1

カテゴリ ビューで別のレイアウトを使用できます。アルファベットバーにはおそらく JLayout を使用します。次に、foreach https://github.com/joomla/joomla-cms/blob/master/components/com_content/views/categories/tmpl/default_items.php#L18で

新しい手紙を確認し、そこにある場合は手紙の見出しを付ける必要があります。

唯一の問題は、文字の下に何もない場合です。リンクを張っていただいてもよろしいでしょうか?そうでない場合は、別のクエリを実行して結果の最初の文字を収集するためのプラグインが必要になるでしょう。

于 2013-08-26T12:41:46.263 に答える
0

質問に対する答えを見つけました。components/com_content/views/category/tmpl/default_children.php のページを編集しました。

id付きのforeachの前にアルファベットバーを追加しました

$lastletter = 0;

|<a href="#LetterA"> A </a>|<a href="#LetterB"> B </a>| <a href="#LetterC">C </a>| <a href="#LetterD">D</a> | <a href="#LetterE">E</a>

foreach内に以下のコードを入力してください

$currentleter = substr($this->escape($child->title),0,1);  

if ($lastletter != $currentleter):
echo '<div id="Letter' . $currentleter .  '" class="letterheader">' . $currentleter . '</div>';
$lastletter = $currentleter;
endif; 

それはうまく機能しています。神に感謝し、特にエリンを助けてくれた人

于 2013-08-27T06:31:20.333 に答える