Печатать содержимое канала для контента с тем же значением поля - PullRequest
0 голосов
/ 26 июля 2011

С Expression Engine мне нужно показать другие доступные вакансии, когда на странице вакансий.Задания являются либо контрактными, либо постоянными, и на странице вакансий мне нужно показывать только другие задания того же типа.

Следующее печатает все другие задания, а также их тип:

    {exp:channel:entries channel="jobs" dynamic="no"}                                 
        <p>{title}
        {job_type}</p>
    {/exp:channel:entries} 

Это будет печатать только все задания контактов:

    {exp:channel:entries channel="jobs" search:job_type="Contract" dynamic="no"}                                  
        <p>{title}
        {job_type}</p>
    {/exp:channel:entries} 

Итак, я попытался использоватьполе {job_type} для уточнения результатов поиска.Однако, с учетом следующего я не получаю никаких результатов:

    {exp:channel:entries channel="jobs" search:job_type="{job_type}" dynamic="no"}                                
        <p>{title}
        {job_type}</p>
    {/exp:channel:entries} 

Кто-то сказал, что мне нужно использовать теги PHP, поэтому я попробовал следующее, но он возвращает все результаты:

    {exp:channel:entries channel="jobs" search:job_type="<?=$this->EE->input->get('job_type')?>" dynamic="no"}                                
        <p>{title}
        {job_type}</p>
    {/exp:channel:entries} 

Как я могу достичь того, что мне нужно?Я новичок в EE, но я бы подумал, что это будет что-то стандартное?

Обратите внимание, структура URL не позволяет мне использовать сегменты URL для фильтрации результатов.Спасибо

1 Ответ

0 голосов
/ 26 июля 2011

Вы не можете вкладывать {exp:channel:entries} теги, так как это приводит к переменным коллизиям.Для этого вам нужно будет использовать встроенный шаблон и передать значение {job_type} этому шаблону.

Итак, в вашем основном цикле {exp:channel:entries}:

{embed="embeds/more_jobs" job_type="{job_type}"}

Тогда ваш шаблон embeds / job_type выглядит следующим образом:

{exp:channel:entries channel="jobs" search:job_type="{embed:job_type}" dynamic="no"}                                
    <p>{title}
    {job_type}</p>
{/exp:channel:entries} 
...