Page 1 of 1

Nieuws module wordt niet getoond

Posted: Sun Dec 04, 2011 9:31 pm
by boyke
Ik heb deze nieuws module gedownload:

http://www.opencart.com/index.php?route ... order=DESC

Het toevoegen in de ADMIN werkt na enkele modificaties goed. Daarna heb ik de module "geinstalleerd" en aan enkele layouts "toegevoegd", echter verschijnt de module niet in de frontend.

Toen ben ik in column_right.php aan het debuggen gegaan (dat is namelijk waar ik de module wil hebben). Daaruit is gebleken dat de "news_module" wel in de $extensions array zit, maar niet in de $modules array.

Deze worden als volgt opgehaald:

Code: Select all

$module_data = array();
		
		$this->load->model('setting/extension');
		
		$extensions = $this->model_setting_extension->getExtensions('module');
		
		foreach ($extensions as $extension) {
			//print_r($extension);
			//echo "<br/><br/>";
			$modules = $this->config->get($extension['code'] . '_module');
			
			//print_r($modules);
			//echo "volgende<br/><br/>";
			
			if ($modules) {
				foreach ($modules as $module) {
					if ($module['layout_id'] == $layout_id && $module['position'] == 'column_right' && $module['status']) {
						$module_data[] = array(
							'code'       => $extension['code'],
							'setting'    => $module,
							'sort_order' => $module['sort_order']
						);				
					}
				}
			}
		}
Daaruit concludeer ik dat er iets niet goed is geconfigureerd voor de module, echter ben ik er nog niet achter wat "config" hier nu precies is.

In de frontend / in de log zie ik geen errors behalve wanneer ik de module aan meer dan een layout toevoeg, dan komt de volgende error tevoorschijn:

"Warning: Invalid argument supplied for foreach() in catalog/controller/common/column_right.php on line 54"

Dit is opzich raar, want ook in de eerste layout zou deze error op moeten treden aangezien hier ($this->config->get($extension['code'] . '_module')) niets uit komt.

Door de config array te printen ben ik nog een stukje wijzer geworden, de news_module wordt namelijk op een iets andere manier gedefinieerd / geregisteerd dan bijvoorbeeld de gallery module:

Gallery:

[gallery_module] => Array ( [0] => Array ( [layout_id] => 15 [position] => content_bottom [status] => 1 [sort_order] => 10 ) )

News:

[news_module] => 0 [news_0_sort_order] => 10 [news_0_status] => 1 [news_0_position] => column_right [news_0_layout_id] => 4

Bij de nieuws module ontbreekt namelijk de Array definitie en die "0" hoort er volgens mij ook niet thuis.

Iemand hier die weet waar en hoe ik dit op kan lossen? Alvast bedankt.

Re: Nieuws module wordt niet getoond

Posted: Sun Dec 04, 2011 9:55 pm
by victorj
Standaard wordt tijdens uploaden de templates van de module toegevoegd bij de default template.
gebruik je een eigen template dan moet je de template bestanden ook uploaden in de directory waar je eigen template staat.

Re: Nieuws module wordt niet getoond

Posted: Mon Dec 05, 2011 2:13 am
by boyke
Klopt, dat heb ik ook (al) gedaan, daar ligt het dus niet aan.

Overigens als je dat niet zou doen, valt die terug op de bestanden uit de "default" template toch?

Re: Nieuws module wordt niet getoond

Posted: Mon Dec 26, 2011 1:01 am
by boyke
Niemand?

Re: Nieuws module wordt niet getoond

Posted: Mon Dec 26, 2011 7:40 pm
by i2Paq
Werkt het wel met de standaard template?

Re: Nieuws module wordt niet getoond

Posted: Mon Dec 26, 2011 11:10 pm
by boyke
Nope, zelfde probleem.

Re: Nieuws module wordt niet getoond

Posted: Tue Dec 27, 2011 12:21 am
by boyke
Probleem opgelost, heb de "oude" module verwijderd en die van Fido geinstalleerd! Deze module werkt wel out-of-the-box en is m.i. ook netter opgebouwd.

Overigens bevat de meegeleverde news.tpl in /catalog/view/theme/<your theme>/template/module wel fouten, dit is hoe die m.i. moet zijn:

Code: Select all

<div class="box">
  <div class="box-heading"><?php echo $heading_title; ?></div>
  <div class="box-content">
  	<?php foreach ($news as $news_item) { ?>
  		<div class="news_item">
  			<?php echo $news_item['description']; ?>
  			<a href="<?php echo $news_item['href']; ?>" title="<?php echo $news_item['title']; ?>" class="news_read_more"><?php echo $text_read_more; ?></a>
  		</div>
	  <?php } ?>
  </div>
</div>

Re: Nieuws module wordt niet getoond

Posted: Tue Dec 27, 2011 5:02 am
by i2Paq
De modules van Fido-X zijn klasse 1!