PluginProbe
Assistant – Every Day Productivity Apps / 1.5.5.1
Assistant – Every Day Productivity Apps v1.5.5.1
1.5.5.1 1.5.5 trunk 0.1.0 0.2.0 0.2.1 0.2.2 0.3.0 0.3.1 0.4 0.4.1 0.4.2 0.5.0 0.5.1 0.6.0 0.7.0 0.7.0.2 0.7.0.3 0.7.0.4 0.7.0.5 0.7.0.6 0.7.0.7 0.7.0.8 0.7.0.9 0.7.1 All 72 releases
← All changes | backend/src/Controllers/PostsController.php +22 -4 0.6.0 → 1.5.5.1 View file →
@@ -265,10 +265,26 @@
265 265 /**
266 266 * Creates a single post.
267 267 */
268 268 public function create_post( $request ) {
269 - $id = wp_insert_post( $request->get_params() );
269 + global $wpdb;
270 270
271 + $params = $request->get_params();
272 + $meta_inputs = isset( $params['meta_input'] ) ? $params['meta_input'] : [];
273 + unset( $params['meta_input'] );
274 + $id = wp_insert_post( $params );
275 +
276 + if ( isset( $meta_inputs ) && is_array( $meta_inputs ) && ! empty( $meta_inputs ) ) {
277 +
278 + foreach ( $meta_inputs as $meta_key => $meta_value ) {
279 + $meta_key = sanitize_key( $meta_key );
280 + if ( null !== $meta_value ) {
281 + $meta_value = addslashes( $meta_value );
282 + }
283 + $wpdb->query( "INSERT INTO {$wpdb->postmeta} (post_id, meta_key, meta_value) values ({$id}, '{$meta_key}', '{$meta_value}')" );
284 + }
285 + }
286 +
271 287 if ( ! $id || is_wp_error( $id ) ) {
272 288 return [
273 289 'error' => true,
274 290 ];
@@ -296,9 +312,9 @@
296 312 'post_parent' => $post->post_parent,
297 313 'post_password' => $post->post_password,
298 314 'post_status' => 'draft',
299 315 /* translators: %s: post/page title */
300 - 'post_title' => sprintf( _x( '%s - Copy', '%s stands for post/page title.', 'fl-assistant' ), $post->post_title ),
316 + 'post_title' => sprintf( _x( '%s - Copy', '%s stands for post/page title.', 'assistant' ), $post->post_title ),
301 317 'post_type' => $post->post_type,
302 318 'to_ping' => $post->to_ping,
303 319 'menu_order' => $post->menu_order,
304 320 ];
@@ -421,9 +437,11 @@
421 437 /**
422 438 * Deletes a single post based on the specified ID.
423 439 */
424 440 public function delete_post( $request ) {
425 - $id = $request->get_param( 'id' );
441 + $params = $request->get_params();
442 + $id = $params['id'];
443 + $force = isset( $params['force'] ) && $params['force'];
426 444
427 445 if ( ! current_user_can( 'edit_post', $id ) ) {
428 446 return rest_ensure_response(
429 447 [
@@ -431,9 +449,9 @@
431 449 ]
432 450 );
433 451 }
434 452
435 - wp_delete_post( $id );
453 + wp_delete_post( $id, $force );
436 454
437 455 return rest_ensure_response(
438 456 [
439 457 'success' => true,