Javascript 从类别下拉列表中选择后,wordpress更改类别演示文稿

Javascript 从类别下拉列表中选择后,wordpress更改类别演示文稿,javascript,wordpress,post,categories,archive,Javascript,Wordpress,Post,Categories,Archive,我正试图建立一个插件,将显示后存档。我这样做了,效果很好,但我想添加一个类别下拉列表,在选择一个之后,归档将刷新并显示choosen类别。这是相关的代码,但不起作用。选择类别后,将不会发生任何情况,需要刷新该类别。。有什么办法吗 <?php wp_dropdown_categories('show_option_none=Select category'); ?> <script type="text/javascript"><!-- var dropdow

我正试图建立一个插件,将显示后存档。我这样做了,效果很好,但我想添加一个类别下拉列表,在选择一个之后,归档将刷新并显示choosen类别。这是相关的代码,但不起作用。选择类别后,将不会发生任何情况,需要刷新该类别。。有什么办法吗

<?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。“Catch”该值用PHP表示,只需查询该类别的帖子即可

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

    希望有帮助