Smarty: не может распознать тег продолжения - PullRequest
1 голос
/ 19 апреля 2011

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

string (145) "Ошибка Smarty: [в module_db_tpl: onlyimage4; строка 26 image_detail]: синтаксическая ошибка: нераспознанный тег 'continue' (Smarty_Compiler.class.php, строка 590)"

мой код выглядит следующим образом:

{foreach from=$itemlist item="item"}

    < .. SOME CODE ..>

{if $maxCol == $colm}
  </div>
  {assign var ='colm' value = 0}
  {$row++}
  {continue}  **<- THIS IS THE PROBLEM**
{/if}

    <.. SOME CODE ..>
{/foreach}

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

Ответы [ 2 ]

2 голосов
/ 11 января 2013

Старый вопрос, но вам нужно использовать: {$continue} (включая $)

1 голос
/ 19 апреля 2011

Для умницы 2: Я не думаю, что тег существует. если вы прочитаете эту ветку , вы увидите, что есть люди, которые хотят этого, и предложение исправить это так. (не пробовал)

compiler.continue.php

<?php 
function smarty_compiler_con­tinue($contents, &$smarty) 
{ 
return 'continue;'; 
} 
?>

(выделено жирным шрифтом мое дополнение)

Создайте эти два файла (в данном случае только один) и поместите их в каталог плагинов. (обратите внимание на соглашение об именах compiler.xxx.php).

Хорошая новость в том, что для smarty 3 есть такая метка! см. руководство , например:

{$data = [1,2,3,4,5]}
  {foreach $data as $value}
    {if $value == 3}
      {* skip this iteration *}
      {continue}
    {/if}
    {$value}
  {/foreach}
  {*
    prints: 1 2 4 5
  *}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...