我有一个照片库,我正在开发使用WP作为内容管理的手段。我非常依赖一些jQuery插件来管理UI样式和操作(通过排序)。我的问题是有太多该死的帖子! 737,每个都有一个显示在页面上的缩略图。这不可避免地使任何浏览器陷入困境。特别是因为排序插件在对图像进行排序时“克隆”图像。 帖子是使用Wp_query脚本构建的;
<?php
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$post_per_page = 15; // (-1 shows all posts) SETS NUMBER OF IMAGES TO DISPLAY!
$do_not_show_stickies = 1; // 0 to show stickies
$args=array(
'post_type' => array ('post'),
'orderby' => 'rand',
'order' => 'ASC',
'paged' => $paged,
'posts_per_page' => $post_per_page
);
$pf_categorynotin = get_post_meta($wp_query->post->ID, true);
if($pf_categorynotin){
$args['tax_query'] = array(
array(
'taxonomy' => 'category',
'field' => 'slug',
'terms' => $pf_categorynotin,
'operator' => 'NOT IN'
)
); //category__in
}
$temp = $wp_query; // assign orginal query to temp variable for later use
$wp_query = null;
$wp_query = new WP_Query($args);
//Begin LOOP #1
if( have_posts() ) :
echo '<ul id="applications" class="applications pf_item3">';
$r = 0;
while ($wp_query->have_posts()) : $wp_query->the_post();
$post_cat = array();
$post_cat = wp_get_object_terms($post->ID, "category");
$post_cats = array();
$post_rel = "";
for($h=0;$h<count($post_cat);$h++){
$post_rel .= $post_cat[$h]->slug.' ';
$post_cats[] = $post_cat[$h]->name;
}
$r++;
echo'<li data-id="id-'. $r .'" data-type="'.$post_rel.'" >';
if (get_post_meta($post->ID, 'port_thumb_image_url', true)) { ?>
<a class="tozoom" href="<?php echo get_post_meta($post->ID, 'port_large_image_url', true); ?>" rel="example4" title="<?php echo $post->post_title; ?>">
<img src="<?php echo get_post_meta($post->ID, 'port_thumb_image_url', true); ?>" class="portfolio_box" alt="<?php the_title(); ?>" width="199px" height="134px" /></a>
<?php } ?>
</li>
<?php endwhile ?>
</ul>
并且项目按照html5标签排序,并在侧栏中显示菜单。
你可以看到它在这里工作; http://marbledesigns.net/marbledesigns/products
现在它随机加载15个帖子并显示它们。我希望能够根据菜单中的选择(通过类别)重新加载帖子,然后更新图像列表而不刷新页面。我希望不仅能够更改显示哪个类别的帖子,还能够更改每页的帖子。
我认为AJAX是这样做的方法,但我不想在菜单中撤消一大堆代码以使其正常工作。现在,菜单是样式单选按钮。有没有办法我可以从该表单中获取相同的输入并更新循环的参数?
寻找有效的解决方案!请帮忙!
答案 0 :(得分:0)
出于时间限制的原因,我将放弃这种方法。我决定使用AJAX作为从链接页面拉出列表并将其显示在当前页面上的方法。
我按照本教程, http://www.deluxeblogtips.com/2010/05/how-to-ajaxify-wordpress-theme.html 在ajax.js脚本中更改了几个名字,效果很好!