2011-01-10 14 views
4

Also, ich habe gesucht, und ein paar Beiträge gefunden, die irgendwie bekommen, was ich will, aber es funktioniert immer noch nicht ganz. Dieser Beitrag schien dem, was ich zu erreichen versuchte, am nächsten zu liegen, und ich baute meinen Code daraus: http://expressionengine.com/forums/viewthread/168142/Anzeigen von Einträgen pro Kategorie in ExpressionEngine

Um zu erklären; Ich habe eine Reihe von Einträgen, jeder Eintrag ist nur einer Kategorie zugeordnet. Ich möchte diese Kategorien auflisten und unter jeder Kategorie die Einträge mit einem ihrer benutzerdefinierten Felder auflisten. Wie so:

  • Kategorie 1

    • Artikel 1
    • Artikel 2
  • Kategorie 2

    • Artikel 1
    • Artikel 2

So, hier ist mein Code, wie es jetzt steht, welche die Kategorien aufgeführt, aber ausspucken nicht alle Einträge überhaupt:

{exp:channel:categories channel="faq-question" style="linear"} 
    <section class="faq-category-container closed"> 
     <h1 class="faq-category-header"><a href="#">{category_name}</a></h1> 
     <dl> 
    {exp:query sql=" 

     SELECT title, url_title AS urlt, cat_id 

     FROM exp_channel_titles 

     NATURAL JOIN exp_category_posts 

     WHERE channel_id = '7' AND cat_id = '{category_id}' 

     ORDER BY title ASC" 
    } 
     {embed="jazz-camp/faq-cat-list" faqlink="{urlt}"} 
    {/exp:query} 
     </dl> 
    </section><!-- end .faq-category --> 
{/exp:channel:categories} 

Und das eingebettete Vorlage es Referenzen:

{exp:channel:entries channel="faq-question" url_title="{embed:faqlink}"}<!-- entry --> 
    <dt>{title}</dt> 
    <dd> 
     {faq_content} 
    </dd> 
{/exp:channel:entries} 

Jede Hilfe wäre sehr geschätzt!

Antwort

4

So, hier ist was ich mit am Ende endete (mit freundlicher Genehmigung von etwas Hilfe bei den EE-Boards über):

{exp:channel:categories channel="faq-camp" style="linear" show_empty="no"} 
    <section class="faq-category-container closed"> 
     <h1 class="faq-category-header"><a href="#">{category_name}</a></h1> 
     <div class="faq-questions-container"> 
      <dl> 
    {embed="jazz-camp/faq-cat-list" faqlink="{category_id}" faqparent="faq-camp"} 
      </dl> 
     </div><!-- end .faq-questions-container --> 
    </section><!-- end .faq-category --> 
{/exp:channel:categories} 

Und wie für die einbetten, sieht es dies wie:

{exp:channel:entries channel="{embed:faqparent}" category="{embed:faqlink}" dynamic="no"}<!-- entries --> 
    <dt>{title}</dt> 
    <dd> 
     {faq_answer} 
    </dd> 
{/exp:channel:entries} 

der Grund für die Einbettung, wie die Dinge zu tun hat werden in Bezug auf die richtigen Kanaleinträge eingezogen; einfach die {exp:channel:entries} inline auf der Seite hat nicht ganz funktioniert.

13

Dies kann ein sehr einfaches Beispiel dafür, was Sie nach:

{exp:channel:categories style="linear"} 
    <h1>{category_name}:</h1> 
    {exp:channel:entries category="{category_id}"} 
    <p>{my_custom_field}</p> 
    {/exp:channel:entries} 
{/exp:channel:categories} 
+0

Ja, das ist die Basisversion von dem, was ich mit endete. Ich habe eine andere Antwort erstellt, um zu demonstrieren, was ich schließlich benutzt habe. – jeffbyrnes

+0

Dies funktioniert in ExpressionEngine 2, also habe ich getestet. – Landitus

+0

Sie haben heute Nacht einen Strang von meiner Gesundheit gerettet, danke für den Beitrag. – Julian