MvKozyrev
Постоялец
- Регистрация
- 5 Май 2007
- Сообщения
- 128
- Реакции
- 74
- Автор темы
- #1
Значит, подправляю RSS-агрегатор. Добавил скрытие/открытие каналов. Проблема в том, что при этом происходит перенос на начало страницы (т.е. вся страница сдвигается к началу). А хочется сохранить ту позицию, на которой находишься. Как сделать?
Вот код:
Вот код:
PHP:
function dasher_display_rss($beforeall='<td valign="top">',$afterall='</td>',$before='<div class="wrap">',$after="</div>",$beforefeed='<ul>',$afterfeed='</ul>',$beforeitem='<li>',$afteritem='</li>',$beforeheader='<h3>',$afterheader='</h3>') {
global $dasher_options;
$feeds = explode('|',$dasher_options['feeds_to_display']);
if (count($feeds > 0)) {
echo $beforeall . "\n";
include_once (ABSPATH . WPINC . '/rss.php');
echo '<h3>Лента новостей (RSS)</h3>';
foreach ((array)$feeds as $feed) {
$rss = @fetch_rss($feed);
if ( isset($rss->items) && 0 != count($rss->items) ) {
echo '
<h3><a target=_blank href="' . $rss->channel['link'] . '">' . $rss->channel['title'] . '</a></h3>
<a id="options_'.$feed.'_show" href="#" onClick="document.getElementById(\'options_'.$feed.'\').style.display=\'\'; this.style.display=\'none\'" style="display:none;"><small>[Показать]</small></a>
<div id="options_'.$feed.'">
<a href="#" onClick="document.getElementById(\'options_'.$feed.'\').style.display=\'none\'; document.getElementById(\'options_'.$feed.'_show\').style.display=\'\'"><small>[Скрыть]</small><br /><br /></a>
';
$rss->items = array_slice($rss->items, 0, 10);
foreach ($rss->items as $item ) {
echo "<a target=_blank href='" . wp_filter_kses($item['link']) . "'>" . wp_specialchars($item['title']) . "</a> — ";
printf(__('%s ago'), human_time_diff(strtotime($item['pubdate'], time() ) ) );
echo "<br />\n<p>" . $item['description'] . "</p>\n";
}
echo '</div>';
}
}
echo $afterall . "\n";
}
}