2011-07-29 8 views
0

最後のliの問題をソートできましたが、最後のリストアイテムを特定のカテゴリの最新エントリにリンクし直すことができません。何か案は?動作しませんエントリのループ、:Expression Engine - 式エンジン内の静的コードに関するヘルプul

{exp:channel:entries channel="project" limit="6" category_group="1" stop_before="{embed:stop_before}" related_categories_mode="yes" custom_fields="yes"} 
{if count == "1"}<ul id="filmStrip">{/if} 
<li> 
{exp:imgsizer:size src="{project_image}" height="68px" width="137px"} 
<a href="{title_permalink='projects-test/view'}"><img src="{sized}" height="{height}" width="{width}" alt=""/></a> 
{/exp:imgsizer:size} 
<a href="{title_permalink='projects-test/view'}"><p class="thumbTitle">{title}</p></a> 
</li> 
{if total_results <= '5' AND total_results == count} 
    <li> 
     <a href="{path='projects-test/view'}/{first_entry_id}"><img src="../../../images/backtostart.jpg" height="68px" width="137px" alt=""/></a> 
     <a href="{path='projects-test/view'}/{first_entry_id}"><p class="thumbTitle">Back to start</p></a> 
    </li> 
{/if} 
{if count == total_results}</ul>{/if} 
{/exp:channel:entries} 
+0

OK、なぜそれが下に表示されているのかわかりました。それは7番目のリスト項目として表示されていますが、5つ以下の場合は行に収まることができます。リスト項目が6つ以下の場合のみ表示する方法を見つける必要があると思います。またはulに6リスト項目のみを表示させる...任意の提案? –

答えて

0

1つの問題は、あなたがチャンネルの外{count}{total_results}変数を使用していることです。

は、ここでは、このように「戻る」リンクの表示を制限することができる方法だ、とも(「最初の」私はあなたが「最新の」を意味すると仮定して)、そのカテゴリの最初のエントリにリンクされています

{exp:channel:entries channel="project" limit="6" category_group="1" stop_before="{embed:stop_before}" related_categories_mode="yes" custom_fields="yes"} 
{if count == "1"}<ul id="filmStrip">{/if} 
<li> 
    {exp:imgsizer:size src="{project_image}" height="68px" width="137px"} 
    <a href="{title_permalink='projects-test/view'}"><img src="{sized}" height="{height}" width="{width}" alt=""/></a> 
    {/exp:imgsizer:size} 
    <a href="{title_permalink='projects-test/view'}"><p class="thumbTitle">{title}</p></a> 
</li> 
{if count == total_results} 
    {if count == "5"} 
    {categories show_group="1" limit="1"} 
    {exp:query sql="SELECT t.entry_id as first_entry_id FROM exp_channel_titles t LEFT JOIN exp_category_posts c ON t.entry_id = c.entry_id WHERE c.cat_id = {category_id} AND t.status = 'open' ORDER BY t.entry_date DESC LIMIT 1"} 
    <li> 
     <a href="{path='projects-test/view'}/{first_entry_id}"><img src="../../../images/backtostart.jpg" height="68px" width="137px" alt=""/></a> 
     <a href="{path='projects-test/view'}/{first_entry_id}"><p class="thumbTitle">Back to start</p></a> 
    </li> 
    {/exp:query} 
    {/categories} 
    {/if} 
</ul>{/if} 
{/exp:channel:entries} 

私はこれをテストしていないので、それがフィットするかどうか教えてください。

UPDATE:物事は "最初のエントリ" クエリが動作するように取得しようとする:

  • がEXPにparse="inward"を追加:queryタグを。
  • EEコントロールパネル内のSQLマネージャを使用して直接SQLクエリを実行してみてください({category_id}変数のcategory_idを置き換えて)、正しいentry_idを返すかどうかを確認してください。
  • このコードでは、各プロジェクトにはそのカテゴリグループ内に割り当てられたカテゴリが1つしかないことを前提としています。

私はべき仕事上で使用ネストされた{if}声明 - そしてそれは、それはすべての時間を実行するためのクエリステートメントの原因となりますよう、あなたとあなたのオリジナルのポストを更新し、高度なものよりもそれを使用することをお勧めします。

+0

こんにちは、多くのありがとうが、これは何も表示されません。プロジェクトはこのコードではリストされません。 –

+0

これは、動作するまでビットを削除してから問題を解決するだけです。この一般的なアイデアはあなたのために働くでしょう。テストする作業サイトなしで必要な方法を正確に記述するのは難しいでしょう。 –

+0

もう一度ありがとうございます。私は私のメインポストで改訂コードを使用して表示する最後の李を取得することができました。しかし、最初のプロジェクトに戻すことはできません。 –

関連する問題