Ситуация.
Есть сайт – http://www.trudvsem.eu/. Есть нормальный шаблон (тема). Тема позволяет выводить на главной анонсы последних новостей.
В авторском исполнении темы на главной выводятся только анонсы трех последних новостей, но меня это не устраивает, ибо половина главной страницы в этом случае остается пустой и я решил увеличить число выводимых анонсов на главной с 3 до 6 или до 9.
Я поискал решение, нашел его на одном японском сайте и перенес на "родную почву" … 🙂 и теперь могу выводить на главной любое число анонсов последних новостей, но тут у меня возникла проблема …
Проблема.
Анонсы последних новостей выводятся на главной рядами – в одном ряду три анонса – это нормально и меня устраивает. Но меня не устраивает, что между рядами этих анонсов возникает белая полоса (промотка), которая становится больше и больше с увеличением числа рядов анонсов.
Например, сейчас при 6 анонсах, выводимых двумя рядами, белая полоса (промотка) между этими рядами имеет такую же высоту, как и ряд с анонсами … соответственно при увеличении рядов анонсов с 2 до 3 – белая полоса становится длиннее ровно в два раза, при 15 анонсах – белая полоса становится длинней в четыре раза.
Я подозреваю, что возникшая проблема связана с тегом шаблона <?php the_excerpt(); ?> в файле home.php, отвечающем за вывод анонсов на главной, где что-то подобное забито по умолчанию.
Я покопался в файлах – style.css и function.php, относящихся к теме, а также в файле wp-includes/post-template.php, относящемся к движку, где он прописан, но не нашел в них ничего, что помогло бы мне решить мою проблему.
В файле темы function.php тег <?php the_excerpt(); ?> прописан только для популярных новостей (но даже в этом случае, я не вижу там параметра, задающего подобную промотку), а для последних новостей в этом файле вообще ничего нет.
К сожалению, в файлах движка я найти ничего не могу, да и не хотел бы я что-то менять в файлах движка , ибо тогда у меня будут возникать проблемы при каждом очередном обновлении движка WordPress.
Вопрос, к форумчанам, имеющим опыт в решении подобных проблем
Подскажите, с чем может быть связана моя проблема и где мне стоит покопаться, чтобы её решить, добившись того, чтобы после её решения ряды анонсов последних новостей получили бы такой же вид, какой имеет сейчас ряд с популярными новостями? Может быть, тег <?php the_excerpt(); ?> в проблеме не виноват? Но какой тег тогда мне имеет смысл рассматривать?
Примечание.
Автор шаблона остыл к своему "детищу" и больше его не поддерживает (сайт темы – заброшен), поэтому задать вопрос непосредственно автору темы я не могу. Стоит добавить, что я – продвинутый пользователь и не программист … для которого вполне возможно бы моя проблема не была бы проблемой …
Скриншот с фрагментом кода файла home.php, о котором идет речь:
SOS! 🙂 Уважаемые гуру, дайте совет … где мне копать? Или не копать?
И рад бы помочь, да не понял нифига 🙂 Никакой крамолы, кроме "лестницы дураков" из слова "ПОДРОБНЕЕ" не вижу. Хоть на браузер намекните (ишака не предлагать – у меня линух ;)).
PS Ошибки html – это нехорошо. Поисправляйте на досуге.
Я обычно использую браузер FireFox. IE не люблю и пользуюсь им крайне редко.
Сейчас … на всякий случай, посмотрел сайт и в IE … там проблема тоже сохраняется и даже чуть хуже, чем в FireFox … внешняя обводка раздела с анонсами последних новостей еще разрывы имеет …
Ну так я в FF и смотрел. Проблема в чем, собственно? Или я не туда смотрю, или нам разное показывают 🙂
Свои ошибки всегда искать и находить тяжелее … мне легче ответить на десяток вопросов новичков на этом форуме, чем найти собственные … "глаз замыливается" … 🙁 Намекните, пожалуйста, где я "накосячил" …
Добавлю скрин.
Меня не устраивают белые пропуски между рядами анонсов последних новостей.
Намекаю:
id="nav" используется несколько раз, хотя id должен быть уникальным
проигнорированы кавычки в <table border=0 width="100%">. А в <td bgcolor=E5E5E5 align=center> еще и диеза перед цветом нет.
и вообще, сходите на http://validator.w3.org/
Красота красотой, а некорректный html может мешать работать жабаскриптам. Голову сломаешь в поисках проблемы, а она может быть на поверхности, типа открыли Н1, а закрыли Н2.
Ух ты! Включил жабаскрипт – и получил такой же вид, как у Вас.
Какой-то скрипт добавляет height: 429px; к <div class="postblock">
Ваш вариант скрина, Ю.Б, мне нравится, а вот свой – нет.
Добавлю, что я просматривал свой сайт с двух компов и везде результат один и тот же – скверный.
Вот туда, судя по всему.
/wp-content/themes/technical-speech/js/js_functions.js:
$heighpop = $(‘#pop_border’).outerHeight();
$heighrcp = $(‘#rcp_border’).outerHeight();
if($heighpop != 0){ $(‘#pop_border .postblock’).css(‘height’, $heighpop); }
if($heighrcp != 0){ $(‘#rcp_border .postblock’).css(‘height’, $heighrcp); }
Для "однорядного" считает правильно, а для "двухрядного" удваивает, устанавливая высоту половинки равной высоте всего блока.
Это японская разработка … 🙂 то есть готовый фрагмент кода с японского блога, где дорабатывали тему.
А это уже мои ошибки … 🙁 Это действительно надо будет исправить …
Похоже, что в этом проблема и есть. Так как я заметил уже, что чем больше рядов, тем больше разрыв между ними.
А как с этим бороться, Юрий Дмитриевич?
К сожалению, должен признаться, что, несмотря на свой опыт, мне знаний по подобным скриптам не хватает …
Удалил проблемный скрипт. Проблема с пробелами сразу решилась. Только немного придется поработать над дизайном, так как пропали разделительные линии между рядами, но я надеюсь, что с этой проблемой теперь справлюсь.
Огромное Спасибо, Юрий Дмитриевич! Здорово помогли!
Попробуйте по-простому
$heighrcp = $(‘#rcp_border’).outerHeight() / 2;
хотя, если разница по высоте первого ряда и второго будет большой, может покалечить. Тогда придется делать "уравниловку" отдельно для каждого ряда.
Возможно есть и кошерный CSS-способ выравнивания высоты, но верстка – не мой конек.
Попробую. Главное, теперь ясно, где "копать". 🙂