Mostrar subcategorias na categoria principal com ZOO

  • Autor Autor Makyntosh
  • Data de início Data de início
Tradução em andamento: em alguns minutos este tópico estará em português. Por enquanto, o conteúdo está no original em espanhol. Ver original
Makyntosh

Makyntosh

Gamma
Usuário com poucas negociações! Use sempre o saldo do ForoBeta!
Tengo una web hecha con ZOO, pero algo tan necesario no viene por defecto de fabrica.

Necesito mostrar los contenidos de mi subcategoria o categoria hijo en la categoria padre...

En este momento se muestra:

Categoria
------Subcategoria 1
--------------------Item 1
--------------------Item 2
--------------------Item 3
------Subcategoria 2
--------------------Item 4
--------------------Item 5
--------------------Item 6

Y quisiera que se mostrara:

Categoria
--------------------Item 1
--------------------Item 2
--------------------Item 3
--------------------Item 4
--------------------Item 5
--------------------Item 6
------Subcategoria 1
--------------------Item 1
--------------------Item 2
--------------------Item 3
------Subcategoria 2
--------------------Item 4
--------------------Item 5
--------------------Item 6

Seguramente debo de modificar algo de _category.php
Inserir CODE, HTML ou PHP:
<?php
/**
* @package   com_zoo
* @author    YOOtheme http://www.yootheme.com
* @copyright Copyright (C) YOOtheme GmbH
* @license   http://www.gnu.org/licenses/gpl.html GNU/GPL
*/

// no direct access
defined('_JEXEC') or die('Restricted access');

?>

<div class="category">
<?php if ($category) : ?>

	<?php $link = $this->app->route->category($category); ?>

	<?php if ($this->params->get('template.show_categories_titles')) : ?>
	<h2 class="title">

		<a href="<?php echo $link; ?>" title="<?php echo $category->name; ?>"><?php echo $category->name; ?></a>
		
		<?php if ($this->params->get('template.show_categories_item_count')) : ?>
			<span>(<?php echo $category->totalItemCount(); ?>)</span>
		<?php endif; ?>
		
	</h2>
	<?php endif; ?>

	<?php if ($this->params->get('template.show_categories_descriptions') && $category->getParams()->get('content.teaser_description')) : ?>
	<div class="description"><?php echo $category->getParams()->get('content.teaser_description'); ?></div>
	<?php endif; ?>

	<?php if (($image = $category->getImage('content.teaser_image')) && $this->params->get('template.show_categories_images')) : ?>
	<a class="teaser-image" href="<?php echo $link; ?>" title="<?php echo $category->name; ?>">
		<img src="<?php echo $image['src']; ?>" title="<?php echo $category->name; ?>" alt="<?php echo $category->name; ?>" <?php echo $image['width_height']; ?>/>
	</a>
	<?php endif; ?>

	<?php if ($this->params->get('template.show_sub_categories') && $category->getChildren()): ?>
	<ul class="sub-categories">
		<?php
		
			foreach ($category->getChildren() as $child) {
				if (!$child->totalItemCount() && !$this->params->get('config.show_empty_categories', false)) continue;
				$link = $this->app->route->category($child);
				$item_count = ($this->params->get('template.show_sub_categories_item_count')) ? ' <span>('.$child->totalItemCount().')</span>' : '';
				echo '<li><a href="'.$link.'" title="'.$child->name.'">'.$child->name.'</a>'.$item_count.'</li>';
			}
			
		?>
	</ul>
	<?php endif; ?>

<?php endif; ?>
</div>

O de category.php
Inserir CODE, HTML ou PHP:
<?php
/**
* @package   com_zoo
* @author    YOOtheme http://www.yootheme.com
* @copyright Copyright (C) YOOtheme GmbH
* @license   http://www.gnu.org/licenses/gpl.html GNU/GPL
*/

// no direct access
defined('_JEXEC') or die('Restricted access');

// include assets css/js
if (strtolower(substr($GLOBALS['app']->getTemplate(), 0, 3)) != 'yoo') {
	$this->app->document->addStylesheet('assets:css/reset.css');
}
$this->app->document->addStylesheet($this->template->resource.'assets/css/zoo.css');

// show description only if it has content
if (!$this->category->description) {
	$this->params->set('template.show_description', 0);
}

// show image only if an image is selected
if (!($image = $this->category->getImage('content.image'))) {
	$this->params->set('template.show_image', 0);
}

$css_class = $this->application->getGroup().'-'.$this->template->name;

?>

<div id="yoo-zoo" class="yoo-zoo <?php echo $css_class; ?> <?php echo $css_class.'-'.$this->category->alias; ?>">

	<?php if ($this->params->get('template.show_alpha_index')) : ?>
		<?php echo $this->partial('alphaindex'); ?>
	<?php endif; ?>

	<?php if ($this->params->get('template.show_title') || $this->params->get('template.show_description') || $this->params->get('template.show_image')) : ?>
	<div class="details <?php echo 'alignment-'.$this->params->get('template.alignment'); ?>">

		<?php if ($this->params->get('template.show_title')) : ?>
		<h1 class="title"><?php echo $this->category->name; ?></h1>
		<?php endif; ?>

		<?php if ($this->params->get('template.show_description') || $this->params->get('template.show_image')) : ?>
		<div class="description">
			<?php if ($this->params->get('template.show_image')) : ?>
				<img class="image" src="<?php echo $image['src']; ?>" title="<?php echo $this->category->name; ?>" alt="<?php echo $this->category->name; ?>" <?php echo $image['width_height']; ?>/>
			<?php endif; ?>
			<?php if ($this->params->get('template.show_description')) echo $this->category->getText($this->category->description); ?>
		</div>
		<?php endif; ?>

	</div>
	<?php endif; ?>


	<?php

		// render categories
		$has_categories = false;
		if ($this->params->get('template.show_categories', true) && ($this->category->childrenHaveItems() || ($this->params->get('config.show_empty_categories', false) && !empty($this->selected_categories)))) {
			$has_categories = true;
			echo $this->partial('categories');
		}

	?>

	<?php

		// render items
		if (count($this->items)) {
			echo $this->partial('items', compact('has_categories'));
		}

	?>

</div>

Gracias de antemano...
 
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
Al crear una categoría en Joomla le dices que esta categoría es hija de la otra categoria, tan fácil como eso. Y al crear un artículo este lo metes en la categoría correspondiente. No hay que tocar nada más.
 
Al crear una categoría en Joomla le dices que esta categoría es hija de la otra categoria, tan fácil como eso. Y al crear un artículo este lo metes en la categoría correspondiente. No hay que tocar nada más.

Pero no utilizo el content que viene por default de joomla, utilizo el ZOO de Yootheme, y esta viene por defecto que los items solo se muestren en su subcategoria, y en el frontpage, pero no en la categoria...

Este es un ejemplo:
Deporte y aire libre - PortalChiautla.com

El frontpage es /directorio-de-empresas/

La categoria es /deporte-y-aire-libre

Los itemes solo se muestran si acceso a la subcategoria o categoria hija de /deporte-y-aire-libre

Deporte y aire libre - PortalChiautla.com
 
Pero no utilizo el content que viene por default de joomla, utilizo el ZOO de Yootheme, y esta viene por defecto que los items solo se muestren en su subcategoria, y en el frontpage, pero no en la categoria...

Este es un ejemplo:
Deporte y aire libre - PortalChiautla.com

El frontpage es /directorio-de-empresas/

La categoria es /deporte-y-aire-libre

Los itemes solo se muestran si acceso a la subcategoria o categoria hija de /deporte-y-aire-libre

Deporte y aire libre - PortalChiautla.com

Con el gestor K2 o el normal, el de serie, arriba a la derecha tienes "opciones", ahí le dices que es lo que te tiene que mostrar. Prueba y me dices. Saludos.
 
Con el gestor K2 o el normal, el de serie, arriba a la derecha tienes "opciones", ahí le dices que es lo que te tiene que mostrar. Prueba y me dices. Saludos.

utilizo el CCK llamado "ZOO" de yootheme.com y no tiene esa opción por defecto amigo. por eso es encesario modificar el PHP
 
ummm... nunca he usado, no voy a poder ayudarte al final xD 😕
 
Voltar
Topo