Auswahlbox nicht markiert und wird nicht gespeichert

Ich musste dem Post vom Frontend Kategorien zuweisen und fand diesen fantastischen Thread hier auf dieser Seite, der ein Formular am Frontend mit Selectboxen generiert. Das Plugin hängt das Formular automatisch an den Inhalt an und funktioniert wie ein Charm.

 false ); $args = apply_filters( 'mcc_allowed_terms_args', $args, $post_id, $tax ); $args['fields'] = 'ids'; $allowed_terms = get_terms( $tax, $args ); foreach ( $suggested_terms as $key => $term_id ) if ( ! in_array( $term_id, $allowed_terms ) ) unset( $suggested_terms[$key] ); // Add terms to taxonomy $affected_terms = wp_set_object_terms( $post_id, $suggested_terms, $tax, false ); update_term_cache($affected_terms); return $affected_terms; } function get_form( $post_id=null, $tax='category' ) { if ( is_null($post_id) || ! taxonomy_exists($tax) ) return false; $args = array( 'hide_empty' => false ); $args = apply_filters( 'mcc_get_terms_args', $args, $post_id, $tax ); $all_terms = get_terms( $tax, $args ); if ( ! $all_terms ) return false; $post_terms = wp_get_object_terms( $post_id, $tax, array( 'fields' => 'ids' ) ); $permalink = get_permalink( $post_id ); $out = "
    "; foreach ( $all_terms as $t ) : $checked = in_array( $t->term_id, $post_terms) ? 'checked' : ''; $out .= "
  • term_id' name='crowd-cat-radio[]' value='$t->term_id' $checked />
  • "; endforeach; $out .= "
"; //TODO: set nonce $out .= "
"; return $out; } function append_form($content){ global $post; if ( 'post' != $post->post_type ) return $content; $form = $this->get_form( $post->ID ); if ( ! $form ) return $content; return "$content \n $form"; } function wpse_crowd_cats_form( $post_id=null, $taxonomy='category' ) { if ( is_null($post_id) ) { global $post; $post_id = $post->ID; } echo $this->get_form( $post_id, $taxonomy ); } } // end of class

Allerdings wollte ich nicht, dass das Formular direkt nach dem Inhalt erscheint, sondern nach ein paar anderen wichtigen divs, die ich nach dem Inhalt habe. Also habe ich das folgende Action-Tag benutzt (im Code als Kommentarzeilen erwähnt), um es in der Vorlage single.php zu verwenden. Dadurch erschien die Form am gewünschten Ort.

  

Das Problem ist, es bleibt nicht auf submit ausgewählt weder die Option wird gespeichert. Bitte schlage mir eine Lösung vor.

Solutions Collecting From Web of "Auswahlbox nicht markiert und wird nicht gespeichert"

In der Codedokumentation:

 // TEMPLATE ACTION TAG TO BE USED IN THEME // Usage: do_action('wpse_crowd_cats_form'); // Usage: do_action('wpse_crowd_cats_form', $post_id, $taxonomy ); 

Wenn die do_action in die Schleife do_action('wpse_crowd_cats_form', get_the_ID()); wird, dann do_action('wpse_crowd_cats_form', get_the_ID()); sollte arbeiten.