-function wp_create_tag($tag_name) {
- return wp_create_term( $tag_name, 'post_tag');
+function get_terms_to_edit( $post_id, $taxonomy = 'post_tag' ) {
+ $post_id = (int) $post_id;
+ if ( !$post_id )
+ return false;
+
+ $terms = get_object_term_cache( $post_id, $taxonomy );
+ if ( false === $terms ) {
+ $terms = wp_get_object_terms( $post_id, $taxonomy );
+ wp_cache_add( $post_id, $terms, $taxonomy . '_relationships' );
+ }
+
+ if ( ! $terms ) {
+ return false;
+ }
+ if ( is_wp_error( $terms ) ) {
+ return $terms;
+ }
+ $term_names = array();
+ foreach ( $terms as $term ) {
+ $term_names[] = $term->name;
+ }
+
+ $terms_to_edit = esc_attr( join( ',', $term_names ) );
+
+ /**
+ * Filter the comma-separated list of terms available to edit.
+ *
+ * @since 2.8.0
+ *
+ * @see get_terms_to_edit()
+ *
+ * @param array $terms_to_edit An array of terms.
+ * @param string $taxonomy The taxonomy for which to retrieve terms. Default 'post_tag'.
+ */
+ $terms_to_edit = apply_filters( 'terms_to_edit', $terms_to_edit, $taxonomy );
+
+ return $terms_to_edit;