我正在Wordpress中建立一個單一的網頁網站,正如我在my previous question(我正在這個新的理由)中所述。我遵循的The tutorial工作,它從數據庫整齊地拉動內容。 但是當我需要在一個頁面中創建一組動態畫廊時,一個新的挑戰就會展現出來。WordPress的動態畫廊
所以這裏需要發生的事情:每一個裏面都有一個帶有畫廊的後期標題列表。當我點擊其中一個鏈接時,縮略圖的帖子就會出現在它的正下方。我設法做得很好,但是當點擊縮略圖時,更大的版本應該出現在右側。我應用了相同的代碼,但它不起作用!它只是進入圖像頁面(image.php)。
這裏現在發生的事情:
而這裏的我,直到如今代碼:
的index.php(圖庫部分)
have_posts()):$近期 - > the_post();?><div class="controle"> <h1>A Galeria</h1> <nav id="galerias"> <?php $args = array('post_type'=>'galeria'); $myposts = get_posts($args); foreach ($myposts as $post) : setup_postdata($post); ?> <li> <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a> </li> <?php endforeach; wp_reset_postdata();?> </nav> <div id="thumbnails"> </div> </div> <div id="conteudo-galeria"> <div id="texto-galeria"> </div> </div> </div>
thumbnails.php(調出縮略圖。工作)
$(document).ready(function() { var hash = window.location.hash.substr(1); var href = $('#galerias li a').each(function(){ var href = $(this).attr('href'); if(hash==href.substr(0,href.length)){ var aCarregar = 'hash+.html #itens'; $('#thumbnails').load(aCarregar) } }); $('#galerias li a').click(function() { var aCarregar = $(this).attr('href')+' #itens'; $('#thumbnails').hide('fast',carregarConteudo); $('#carregando').remove(); $('#thumbnails').append('<span id="carregando">Carregando...</span>'); $('#carregando').fadeIn('normal'); window.location.hash = $(this).attr('href').substr(0,$(this).attr('href').length); function carregarConteudo() { $('#thumbnails').load(aCarregar,'',mostrarNovoConteudo); } function mostrarNovoConteudo() { $('#thumbnails').show('normal',esconderCarregando); } function esconderCarregando() { $('#carregando').fadeOut('normal'); } return false; }); });
galeria.php(addapted縮略圖,使圖像不工作)
$(文件)。就緒(函數(){
var hash = window.location.hash.substr(1); var href = $('#itens a').each(function(){ var href = $(this).attr('href'); if(hash==href.substr(0,href.length)){ var aCarregar = 'hash+.html #conteudo-galeria'; $('#conteudo-galeria').load(aCarregar) } }); $('#itens a').click(function() { var aCarregar = $(this).attr('href')+' #conteudo-galeria'; $('#conteudo-galeria').hide('fast',carregarConteudo); $('#carregando').remove(); $('#atracoes').append('<span id="carregando">Carregando...</span>'); $('#carregando').fadeIn('normal'); window.location.hash = $(this).attr('href').substr(0,$(this).attr('href').length); function carregarConteudo() { $('#conteudo-galeria').load(aCarregar,'',mostrarNovoConteudo); } function mostrarNovoConteudo() { $('#conteudo-galeria').show('normal',esconderCarregando); } function esconderCarregando() { $('#carregando').fadeOut('normal'); } return false; });
})。
iamge.php(從庫中的圖像頁)
<?php get_header(); ?>
<!-- Main -->
<div class="main">
<div id="conteudo-galeria">
<div id="texto-galeria">
<?php if (have_posts()): while (have_posts()) : the_post(); ?>
<!-- imagem -->
<?php if (wp_attachment_is_image($post->id)) : $att_image = wp_get_attachment_image_src($post->id, "full"); ?>
<img src="<?php echo $att_image[0];?>" width="<?php echo $att_image[1];?>" height="<?php echo $att_image[2];?>" alt="<?php $post->post_excerpt; ?>" />
<?php else : ?>
<a href="<?php echo wp_get_attachment_url($post->ID) ?>" title="<?php echo wp_specialchars(get_the_title($post->ID), 1) ?>"><?php echo basename($post->guid) ?></a>
<?php endif; ?>
<!-- /imagem -->
<?php endwhile; ?>
<?php else: ?>
<?php endif; ?>
</div>
</div>
</div>
<!-- /Main -->
<?php get_footer(); ?>
哇,這是很長。謝謝你,如果你有耐心遵循'直到這裏。
PS:JS也應該讓歷史工作,但事實並非如此。這不是現在的優先事項,但如果你們知道無論如何修復它,它將非常感激。
嗯。你是對的,這可能是事件。有趣的是,我包括了preventDefault,但它的行爲和以前一樣...我的事件確保我的「galeria.js」被正確調用。 – Digger