Косяки при верстке joomla.

Вот разгребаю верстку в джумла. Выскочил простейший косяк — правое меню улетает вниз при выводе списка категории в виде блога. Казалось бы простейшая ситуация — залезть глянуть div'ы, подредактировать css. Первое, что в голову лезет это float! А не! Не забываем, что кустомизируем готовый шаблон под джумлой.

Теперь подробности.
Коды firebug.
На проблемной странице видим:
РЕШЕНИЕ ЕСТЬ! (07.05.10)


Теперь тот же огрызок на нормальной странице, когда меню не сползает вниз:



Теперь выделим главное текстом!
В нормальном случае имеем div вестку такую:


<div id="contentWrap" class="Wide">
  <div id="innerContent_even" class="Wide">
  <div id="rightCol_even">
</div>


А в проблемном случае эти же элементы вложены уже по-другому!:


<div id="shadow_right" class="Wide even">
  <div id="contentWrap" class="Wide">
    <div id="innerContent_even" class="Wide">
  </div>
  <div id="rightCol_even">
</div>


Как я понимаю, при генерации страниц где-то потерялась общая структура( Не могу понять, почему вылетел из общего дива rightCol?! А менять contentWrap нельзя ж потому как на остальных страницах при «нормальной» генерации все отображается нормально.

Есть догадки какие-нибуть? Я пока вижу путь только один — разгребать почему при «данном» типе страницы генеряться div'ы с другим вложением(
Разложусь ка я тут со своим html:


								<!-- Main Content -->
<div id="midCol_<?php echo $mainWidth ?>"><?php if($this->countModules('advert1')) : ?>
.............
	


После очередной зачистки:
вырезано )))

Это нехорошо( Похоже, что все дерево div'ов генериться. В статике нету. Значить пути два — или через одно место все-таки пробивать в ЦэСэСе или доставать откуда оно генерит такое дерево.

Продолжу сорить мыслями)

В шаблоне вижу:


	<?php if($this->countModules('right')) : ?>
		<!-- Right Column -->
			<div id="rightCol_<?php echo $mainWidth ?>">
				<div id="rightCol">
				<jdoc:include type="modules" name="right" style="xhtml" />
				</div>
			</div>
		<!-- End Right Column -->
	<?php endif; ?>
</div>
<!-- End Content Wrap-->


Значит right Colum должен быть всегда включен в Content Wrap!
Похоже, что выскакивает где-то лишний закрывающий Див! Попытаемся подумать, откуда он может взяться, может ли он выскачить из верхней ветки? Не может, т.к. при этом закрылась бы верхняя ветка и на этом все закончилось. Значит косяк находится в классе, в который должен быть включен Right Column, т.е. в ContentWrap!

РЕШЕНИЕ НАЙДЕНО, С ЭТОГО места :

1. Кратко, что сделано для ПРЕДОТВРАЩЕНИЯ КОСЯКА):

Заменил файл
/templates/'папка моего шаблона'/html/com_content/category/blog.php
на
/components/com_content/views/category/tmpl/blog.php  

После этого все косяки при выводе списка публикаций категории в виде блога ушли с проблемной страницы. Ура!

2. Немного подробностей:
При использовании «своих» шаблонов, строится специальная иерархия папок-файлов разметки. Есть в Joomla и разметка по-умолчанию. Я так понял, что если специальной иерархии нету, то файлы разметки берутся по-умолчанию. В моем случаи они были. Думаю надо этот вопрос осветить в другой статье.
Пожалуйста, товарищи джумловеды!

Комментарии (2)

RSS свернуть / развернуть
+
0
Сергей, обратите внимание, на этот коммент) Ваше предположение о переименовке классов или подобное видите не оправдалось. В Joomla оказывается есть свои заморочки. Все-таки косяк был в незнании структуры этой cms и косяк был приговорен всего лишь одним копипастом.
avatar

PigmaLion

  • 7 мая 2010, 10:31
+
0
Алилуя!
avatar

dimon

  • 7 мая 2010, 11:17

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.
Не забываем смотреть статистику:

Яндекс цитирования