Перейти к содержимому


Фотография
- - - - -

[Рецепт] Подпись к фото категории

category alt

Лучший Ответ CB9TOIIIA , 08 February 2018 - 07:42

В общем тут манагер возмутился, а почему он не учитывает модуль?! JBZoo category list.

 

Главная построена модулем, поэтому пришлось править.

  1. /modules/mod_jbzoo_category

Нас интересует helper.php и в tmpl (ваш шаблон вывода).

 

В хелпер вносим правки (примерно 70 строка):

  1. $currentCat = array(
  2. 'active_class' => ($curCatId == $category->id) ? 'category-active' : '',
  3. 'cat_link' => $catUrl,
  4. 'category_name' => $category->name,
  5. 'custom_catid' => $category->id,
  6. 'params' => $category->params,
  7. 'item_count' => null,
  8. 'desc' => null,
  9. 'image' => null,
  10. 'items' => array(),
  11. );

Важные строки:

  1. 'custom_catid' => $category->id,
  2. 'params' => $category->params,

Модуль теперь знает id (вдруг понадобится) и парамс - где хранится информация об авторе (альт) и другое.

 

Далее в шаблоне делаем обращение:

  1. <?php if (!empty($category['image'])): ?>
  2. <div class="jbcategory-image align-<?php echo $params->get('category_image_align', 'left') ?>">
  3. <a href="<?php echo $category['cat_link'] ?>"
  4. title="<?php echo $category['category_name'] ?>"><?php echo str_replace('src=','alt="'.$category['params']['metadata.author'].'" src=',$category['image']) ?></a>
  5. </div>
  6. <?php endif; ?>

Сделал обычной заменой str_replace - просто и работает  8)

Перейти к сообщению


В теме одно сообщение

#1 CB9TOIIIA

CB9TOIIIA

Отправлено 06 February 2018 - 07:59

Всем привет. В общем клиенту уже прожужали, что alt очень важен для фото - ну хозяин барин. 
Задача сделать alt к фото страницы категории.
 
Пошел простым путем, т.к. есть поле Автор - но оно не используется, просто воспользуюсь им.
 
zV1Mc1.png A4oscK.png
 
Путь:

  1. /media/zoo/applications/jbuniversal/templates/catalog/renderer/category/

Ну и код:
 

  1. <?php
  2. /**
  3. * JBZoo App is universal Joomla CCK, application for YooTheme Zoo component
  4. *
  5. * @package jbzoo
  6. * @version 2.x Pro
  7. * @author JBZoo App http://jbzoo.com
  8. * @copyright Copyright (C) JBZoo.com, All rights reserved.
  9. * @license http://jbzoo.com/license-pro.php JBZoo Licence
  10. * @coder Denis Smetannikov <denis@jbzoo.com>
  11. */
  12.  
  13. // no direct access
  14. defined('_JEXEC') or die('Restricted access');
  15.  
  16.  
  17. $this->app->jbdebug->mark('layout::category::start');
  18.  
  19. // set vars
  20. $category = $vars['object'];
  21. // $primary_category_id = $this->_item->getPrimarycategory()->id;
  22.  
  23. $parebt_cat = $category->id;
  24. $parentcategory = $this->app->table->category->get($parebt_cat);
  25.  
  26.  
  27. $childrens = $category->getChildren($parebt_cat);
  28.  
  29.  
  30. // dump($category,0,'category');
  31. $title = $this->app->string->trim($vars['params']->get('content.category_title', ''));
  32. $subTitle = $this->app->string->trim($vars['params']->get('content.category_subtitle', ''));
  33. $image = $this->app->jbimage->get('category_image', $vars['params']);
  34.  
  35. $title = $title ? $title : $category->name;
  36.  
  37.  
  38.  
  39. if ((int)$vars['params']->get('template.category_show', 1)) : ?>
  40. <div class="category rborder alias-<?php echo $category->alias; ?>">
  41.  
  42. <?php if ((int)$vars['params']->get('template.category_title_show', 1)) : ?>
  43. <h1 class="title"><?php echo $title; ?></h1>
  44. <?php endif; ?>
  45.  
  46.  
  47.  
  48. <?php if ((int)$vars['params']->get('template.category_subtitle', 1) && !empty($subTitle)) : ?>
  49. <h2 class="subtitle"><?php echo $subTitle; ?></h2>
  50. <?php endif; ?>
  51.  
  52.  
  53. <?php if ((int)$vars['params']->get('template.category_image', 1) && $image['src']) : ?>
  54. <div class="image-full align-<?php echo $vars['params']->get('template.category_image_align', 'left'); ?>">
  55. <img src="<?php echo $image['src']; ?>" <?php echo $image['width_height']; ?>
  56. title="<?php echo $category->name; ?>" alt="<?php echo $category->name; ?>"/>
  57. </div>
  58. <?php endif; ?>
  59.  
  60.  
  61.  
  62. <?php if ((int)$vars['params']->get('template.category_text', 1) && $category->description) : ?>
  63. <div class="description-full"><?php echo $category->getText($category->description); ?></div>
  64. <?php endif; ?>
  65.  
  66.  
  67. <?php echo JBZOO_CLR; ?>
  68. </div>
  69.  
  70. <?php else: ?>
  71.  
  72. <div class="category alias-<?php echo $category->alias; ?>">
  73. <?php if ((int)$vars['params']->get('template.category_title_show', 1)) : ?>
  74. <h1 class="title"><?php echo $title; ?></h1>
  75. <?php endif; ?>
  76. </div>
  77.  
  78. <?php endif; ?>
  79.  
  80. <?php
  81.  
  82. if (strlen($category->description) > 10) {
  83. if (empty($childrens)) {
  84. if (strlen($vars['params']->get('content.category_teaser_text', '')) > 10) : ?>
  85. <div class="description-teaser">
  86. <?php echo $vars['params']->get('content.category_teaser_text', ''); ?>
  87. </div>
  88. <?php endif;
  89.  
  90. }
  91. else {
  92. echo '<div class="maincategoryjbzoo">'.$category->description.'</div>';
  93. }
  94. }
  95.  
  96. ?>
  97.  
  98. <?php
  99.  
  100. // dump($childrens,0,'category');
  101.  
  102. //hack
  103.  
  104.  
  105. $width = 250;
  106. $height = 200;
  107.  
  108. foreach ($childrens as $parentCateg) {
  109. $thumbimg = $this->app->jbimage->resize($parentCateg->params->get('content.category_image'), $width, $height);
  110. $urlCat = $this->app->route->category($parentCateg);
  111. echo "<div class='podcat parent{$parentCateg->alias}'><a href='{$urlCat}'>$parentCateg->name</a>";
  112. if (($parentCateg->params->get('content.category_image'))) {
  113. echo '<div class="catimagejbzoo"><a href='.$urlCat.'><img src="'.$thumbimg->rel.'" alt="'.$parentCateg->params->get('metadata.author').'" ></a></div>';
  114. }
  115. if (strlen($parentCateg->description) > 10) {
  116. echo '<div class="maincategoryjbzoo">'.$parentCateg->description.'</div>';
  117. }
  118.  
  119. echo '<div class="gotocategoryjbzoo"><a class="btn btn-default" href='.$urlCat.'>Вся продукция</a></div>';
  120.  
  121. echo "</div>";
  122. }
  123.  
  124.  
  125. $this->app->jbdebug->mark('layout::category::finish');
  126.  

 
Важное:

  1. $parentCateg->params->get('metadata.author');

Переопределил константы: 
 
lPTYDB.png
 
Готовый вид:
 

7rvHv7.png
 
 
Сайт:

JGHghJ.png
 

 

Задача выполнена :)


  • 4

#2 CB9TOIIIA

CB9TOIIIA

Отправлено 08 February 2018 - 07:42   Лучший Ответ

В общем тут манагер возмутился, а почему он не учитывает модуль?! JBZoo category list.

 

Главная построена модулем, поэтому пришлось править.

  1. /modules/mod_jbzoo_category

Нас интересует helper.php и в tmpl (ваш шаблон вывода).

 

В хелпер вносим правки (примерно 70 строка):

  1. $currentCat = array(
  2. 'active_class' => ($curCatId == $category->id) ? 'category-active' : '',
  3. 'cat_link' => $catUrl,
  4. 'category_name' => $category->name,
  5. 'custom_catid' => $category->id,
  6. 'params' => $category->params,
  7. 'item_count' => null,
  8. 'desc' => null,
  9. 'image' => null,
  10. 'items' => array(),
  11. );

Важные строки:

  1. 'custom_catid' => $category->id,
  2. 'params' => $category->params,

Модуль теперь знает id (вдруг понадобится) и парамс - где хранится информация об авторе (альт) и другое.

 

Далее в шаблоне делаем обращение:

  1. <?php if (!empty($category['image'])): ?>
  2. <div class="jbcategory-image align-<?php echo $params->get('category_image_align', 'left') ?>">
  3. <a href="<?php echo $category['cat_link'] ?>"
  4. title="<?php echo $category['category_name'] ?>"><?php echo str_replace('src=','alt="'.$category['params']['metadata.author'].'" src=',$category['image']) ?></a>
  5. </div>
  6. <?php endif; ?>

Сделал обычной заменой str_replace - просто и работает  8)


  • 1





Темы с аналогичным тегами category, alt

Click to return to top of page in style!