繁体   English   中英

从类别下拉列表中选择后,wordpress更改类别显示

[英]wordpress change category presentation after choosing from category dropdown

我正在尝试构建一个将显示帖子存档的插件。 我做到了,它工作正常,但我想添加一个类别下拉列表,选择一个类别后,归档文件将刷新并显示所选的类别。 这是相关的代码,但是不起作用。 选择类别后,什么也没有发生,因此需要刷新。有关如何执行此操作的任何想法?

<?php wp_dropdown_categories('show_option_none=Select category'); ?>
<script type="text/javascript"><!--
    var dropdown = document.getElementById("cat");
    function onCatChange() {
        if ( dropdown.options[dropdown.selectedIndex].value > 0 ) {
            location.href = "<?php echo get_option('home');
?>/?cat="+dropdown.options[dropdown.selectedIndex].value;
        }
    }
--></script>
</li>
      <ul class="zeevul">
<?php query_posts( array ( 'cat' => 'dropdown.options[dropdown.selectedIndex].value', 'posts_per_page' => 999));
if (have_posts()) : while (have_posts()) : the_post();
  // do whatever you want
?>
<li>
<h2 href="<?php the_permalink(); ?>"><?php the_title(); ?></h2>
<p><?php echo excerpt($words); ?></p>

我认为这里的方法是错误的。 此处显示的Javascript和PHP的组合不是双向的。

据我所知,在query_posts上您不能将参数从JS传递给PHP。 现在,您正在传递一个字符串,以“ dropdown.options ....”查询数据库,这只是服务器的字符串,不是实际值。

我认为最好将Dropbox设置为随每次更改而发布的表单。 作为帖子发送的参数将是所选索引的值,即类别ID。 使用PHP“捕获”该值,并仅查询该类别的帖子。

您可以使用“ post”或“ get”,因为我认为post在WP中处理起来有些棘手。

希望能有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM