Loadырь

Loadырь

Быть лучшим - не значит быть достаточно хорошим.
+1247
Репутация
4894
Рейтинг
#1 [ЕСТЬ РЕШЕНИЕ] Требуется шаблонодел для 1.10.6 15 февраля 2016 в 14:55

чет странности какие

Blackman-st
Да нет никаких странностей. Когда требуется верстальщик, или шаблонных дел мастер, тогда да, было бы странно. А когда требуется шаблонодел, то Странник наверняка рассчитывает

что с вами могут попрощаться

Олег Васильевич я
#2 Как добавить div в списке статей icms2 15 февраля 2016 в 11:58
Как то так надо
  1. <?php if ($items){ ?>
  2. <?php
  3. $advert = '<div>...</div>';
  4. $i = 0;
  5. ;?>
  6. <div class="content_list featured <?php echo $ctype['name']; ?>_list">
  7.  
  8.  
  9. <?php foreach($items as $item){ ?>
  10.  
  11. <?php
  12. $item['ctype'] = $ctype;
  13. $is_private = $item['is_private'] && $hide_except_title && !$item['user']['is_friend'];
  14. $class = $index==0 ? 'first' : ($index<3 ? 'second' : '');
  15. $size = $index==0 ? 'big' : ($index<3 ? 'normal' : 'small');
  16. $stop = 0;
  17. ?>
  18. if ($i == 1){ echo $advert; }
  19.  
  20. <div class="content_list_item <?php echo $ctype['name']; ?>_list_item <?php if ($class) { echo $class; } ?><?php if (!empty($item['is_vip'])){ ?> is_vip<?php } ?>">
  21.  
  22. <?php if (isset($fields['photo']) && $fields['photo']['is_in_list'] && !empty($item['photo'])){ ?>
  23. <div class="photo">
  24. <?php if ($is_private) { ?>
  25. <?php echo html_image(default_images('private', $size), $size, $item['title']); ?>
  26. <?php } else { ?>
  27. <a href="<?php echo href_to($ctype['name'], $item['slug'].'.html'); ?>">
  28. <?php echo html_image($item['photo'], $size, $item['title']); ?>
  29. </a>
  30. <?php } ?>
  31. <?php unset($item['photo']); ?>
  32. </div>
  33. <?php } ?>
  34.  
  35. <div class="fields">
  36.  
  37. <?php foreach($fields as $field){ ?>
  38.  
  39. <?php if ($stop === 2) { break; } ?>
  40. <?php if (empty($item[$field['name']])) { continue; } ?>
  41. <?php if ($field['is_system']) { continue; } ?>
  42. <?php if (!$field['is_in_list']) { continue; } ?>
  43. <?php if ($field['groups_read'] && !$user->isInGroups($field['groups_read'])) { continue; } ?>
  44.  
  45. <?php
  46. if (!isset($field['options']['label_in_list'])) {
  47. $label_pos = 'none';
  48. } else {
  49. $label_pos = $field['options']['label_in_list'];
  50. }
  51. ?>
  52.  
  53. <div class="field ft_<?php echo $field['type']; ?> f_<?php echo $field['name']; ?>">
  54.  
  55. <?php if ($label_pos != 'none'){ ?>
  56. <div class="title_<?php echo $label_pos; ?>">
  57. <?php echo $field['title'].($label_pos=='left' ? ': ' : ''); ?>
  58. </div>
  59. <?php } ?>
  60.  
  61. <div class="value">
  62. <?php if ($field['name'] == 'title' && $ctype['options']['item_on']){ $stop++; ?>
  63.  
  64. <?php if ($item['parent_id']){ ?>
  65. <a class="parent_title" href="<?php echo href_to($item['parent_url']); ?>"><?php html($item['parent_title']); ?></a>
  66. &#8594;
  67. <?php } ?>
  68.  
  69. <?php if ($is_private) { ?>
  70. <?php html($item[$field['name']]); ?> <span class="is_private" title="<?php html(LANG_PRIVACY_PRIVATE); ?>"></span>
  71. <?php } else { ?>
  72. <a href="<?php echo href_to($ctype['name'], $item['slug'].'.html'); ?>"><?php html($item[$field['name']]); ?></a>
  73. <?php if ($item['is_private']) { ?>
  74. <span class="is_private" title="<?php html(LANG_PRIVACY_PRIVATE); ?>"></span>
  75. <?php } ?>
  76. <?php } ?>
  77.  
  78. <?php } else { ?>
  79.  
  80. <?php if ($is_private) { $stop++; ?>
  81. <!--noindex--><div class="private_field_hint"><?php echo LANG_PRIVACY_PRIVATE_HINT; ?></div><!--/noindex-->
  82. <?php } else { ?>
  83. <?php echo $field['handler']->setItem($item)->parseTeaser($item[$field['name']]); ?>
  84. <?php } ?>
  85.  
  86. <?php } ?>
  87. </div>
  88.  
  89. </div>
  90.  
  91. <?php } ?>
  92.  
  93. </div>
  94.  
  95. <?php
  96. $is_tags = $ctype['is_tags'] &&
  97. !empty($ctype['options']['is_tags_in_list']) &&
  98. $item['tags'];
  99. ?>
  100.  
  101. <?php if ($is_tags){ ?>
  102. <div class="tags_bar">
  103. <?php echo html_tags_bar($item['tags']); ?>
  104. </div>
  105. <?php } ?>
  106.  
  107. <?php
  108. $show_bar = !empty($item['rating_widget']) ||
  109. $fields['date_pub']['is_in_list'] ||
  110. $fields['user']['is_in_list'] ||
  111. !$item['is_approved'];
  112. ?>
  113.  
  114. <?php if ($show_bar){ ?>
  115. <div class="info_bar">
  116. <?php if (!empty($item['rating_widget'])){ ?>
  117. <div class="bar_item bi_rating">
  118. <?php echo $item['rating_widget']; ?>
  119. </div>
  120. <?php } ?>
  121. <?php if ($fields['date_pub']['is_in_list']){ ?>
  122. <div class="bar_item bi_date_pub" title="<?php echo $fields['date_pub']['title']; ?>">
  123. <?php echo $fields['date_pub']['handler']->parse( $item['date_pub'] ); ?>
  124. </div>
  125. <?php } ?>
  126. <?php if ($fields['user']['is_in_list']){ ?>
  127. <div class="bar_item bi_user" title="<?php echo $fields['user']['title']; ?>">
  128. <?php echo $fields['user']['handler']->parse( $item['user'] ); ?>
  129. </div>
  130. <?php if (!empty($item[
#3 Как добавить div в списке статей icms2 15 февраля 2016 в 11:51
Я так понял вы хотите после первой записи в списке воткнуть рекламный блок?
#4 Как добавить div в списке статей icms2 15 февраля 2016 в 11:32
  1. <?php for (i = 1; ;){
  2. if (i = 1){
  3. echo $advert;
  4. }
  5. ?>
Вы пытаетесь запустить прогон foreach($items as $item){} в цикле for(i = 1; ;)??? не совсем понятно что вы хотите сделать таким образом?

может сразу вместо этого кода прописать ваш див с адвертом?

P.S. в php лучше писать не i а $i.
#5 Как добавить div в списке статей icms2 15 февраля 2016 в 11:28
Интересный код. Я впечатанлён.
#6 [ЕСТЬ РЕШЕНИЕ] Соц кнопки Яндекса, вставить код куда в 2.х.х 14 февраля 2016 в 09:48
Файл \templates\default\content\default_item.tpl.php строки 141-143
Файл \templates\default\controllers\photos\view.tpl.php строки 110-111
#7 [ЕСТЬ РЕШЕНИЕ] Более 100 типов контента 13 февраля 2016 в 19:50
Glaz, да у вас 10 000 записей на 100 типов контента, а было бы 10 000 записей в 10 типах контента. Это не важно. Так как пользователь заходя на страницу одного типа контента, делает 2-3 запроса в бд. Другой пользователь заходит на страницу другого типа контента, и также делает 2-3 запроса в бд. Но нет разницы из какой бд ему вытягивать информацию. Конечно если таблица с большим количеством записей, то выборка нужных займёт большее время. Поэтому в этом случае сайт будет работать немного шустрее, когда 10 000 записей в 100 типах контента а не в 10 типах. Ваша проблема это не 100 типов контента, а "1000" уников.
#8 [ЕСТЬ РЕШЕНИЕ] Что делать и куда двигаться? 13 февраля 2016 в 19:26

Вот если бы и наши разработчики шаблонов объединились с разработчиками дополнении и так работали им бы цены не было

Akziaplus
Тут одна студия объединилась с разработчиками, судя по комментариям, не особо это оценили smile

выпустили например 1.10, накопили наработки и вместо например 1.10.6 сразу 1.11.

eoleg
Сейчас так на первой ветке и делается — копятся наработки smile
#9 [ЕСТЬ РЕШЕНИЕ] Более 100 типов контента 13 февраля 2016 в 19:06

100 типов контента

Glaz
Действительно.
Давайте посчитаем. Количество пользователей у вас +-1000 — это скажем постоянное значение, меняется только количество типов контента, 10, 50, 100, 200 не важно. Все файлы для чтения/записи из типов контента — одни и те же.В запросах в БД есть отличия, но все они сводятся к системному имени типа контента, что не имеет существенной роли. Исходя из этого получается, что нет особой разницы в том, 10 у вас типов контента "обслуживают" 1000 уников или 100 типов контента на эти же 1000 уников.
#10 [ЕСТЬ РЕШЕНИЕ] Что делать и куда двигаться? 13 февраля 2016 в 18:36

Все просто и четко работает.

Akziaplus
Обновления присылают бесплатно и пожизненно или есть какие-то условия?
#11 [ЕСТЬ РЕШЕНИЕ] Более 100 типов контента 13 февраля 2016 в 18:33
Glaz, очень многое зависит от того, что именно будет входить в эти 100 компонентов и кто их авторы. Чтобы положить сайт достаточно одного "кривого" дополнения.
#12 Календарь событий для 2-ки 13 февраля 2016 в 16:10
Добавил "разукрашки", оформил как тип поля, которое выводит время начала, окончания и продолжительность события и виджет с календарём, прикручивать можно к любому типу контента, например новости. Работа продолжается.
#13 Посоветуйте форум: стандартный на ICMS-1 или сторонний? 12 февраля 2016 в 19:58
garry, у вас наработки по интеграции SMF с ICMS есть?
#14 День всех влюбленных 11 февраля 2016 в 19:15

можно романтично и с тремя детьми

Soul
поделитесь "секретом"
#15 День всех влюбленных 11 февраля 2016 в 19:04

3)… Думаю как романтично провести день с супругой (и тремя детьми smile ).

Soul
Тут без вариантов либо романтично, либо с тремя детьми.
🍪Мы используем файлы cookie для работы сайта. Читать подробнее.