get() public method

Returns the trasher setting value for the post with the given ID, or the current post.
Since: 3.0.0
public get ( integer $post_id ) : boolean
$post_id integer Optional. Post ID. Defaults to 0.
return boolean The trasher setting value for the post with the given ID, or the current post.
    /**
     * Renders the setting markup.
     *
     * @since   3.0.0
     * @wp-hook post_submitbox_misc_actions
     *
     * @param WP_Post $post Post object.
     *
     * @return void
     */
    public function render(WP_Post $post)
    {
        $id = 'mlp-trasher';
        ?>
		<div class="misc-pub-section misc-pub-mlp-trasher">
			<?php 
        echo \Inpsyde\MultilingualPress\nonce_field($this->nonce);
        ?>
			<label for="<?php 
        echo esc_attr($id);
        ?>
">
				<input type="checkbox" name="<?php 
        echo esc_attr(TrasherSettingRepository::META_KEY);
        ?>
"
					value="1" id="<?php 
        echo esc_attr($id);
        ?>
"
					<?php 
        checked($this->setting_repository->get($post->ID));
        ?>
>
				<?php 
        _e('Send all the translations to trash when this post is trashed.', 'multilingual-press');
        ?>
			</label>
		</div>
		<?php 
    }
Beispiel #2
0
 /**
  * Trashes all related posts.
  *
  * @since   3.0.0
  * @wp-hook wp_trash_post
  *
  * @param int $post_id Post ID.
  *
  * @return int The number of related posts trashed.
  */
 public function trash_related_posts($post_id)
 {
     if (!$this->setting_repository->get($post_id)) {
         return 0;
     }
     $current_site_id = get_current_blog_id();
     $related_posts = $this->content_relations->get_relations($current_site_id, $post_id, 'post');
     unset($related_posts[$current_site_id]);
     if (!$related_posts) {
         return 0;
     }
     $trashed_post = 0;
     // Temporarily remove the function to avoid recursion.
     $action = current_action();
     remove_action($action, [$this, __FUNCTION__]);
     array_walk($related_posts, function ($post_id, $site_id) use(&$trashed_post) {
         switch_to_blog($site_id);
         $trashed_post += (bool) wp_trash_post($post_id);
         restore_current_blog();
     });
     // Add the function back again.
     add_action($action, [$this, __FUNCTION__]);
     return $trashed_post;
 }