PATH:
home
/
sarkas88.com
/
public_html
/
wp-content
/
plugins
/
wordpress-seo
/
src
/
helpers
<?php namespace Yoast\WP\SEO\Helpers; use WP_Block_Parser_Block; /** * A helper object for blocks. */ class Blocks_Helper { /** * Holds the Post_Helper instance. * * @var Post_Helper */ private $post; /** * Constructs a Blocks_Helper instance. * * @codeCoverageIgnore It handles dependencies. * * @param Post_Helper $post The post helper. */ public function __construct( Post_Helper $post ) { $this->post = $post; } /** * Returns all blocks in a given post. * * @param int $post_id The post id. * * @return array The blocks in a block-type => WP_Block_Parser_Block[] format. */ public function get_all_blocks_from_post( $post_id ) { if ( ! $this->has_blocks_support() ) { return []; } $post = $this->post->get_post( $post_id ); return $this->get_all_blocks_from_content( $post->post_content ); } /** * Returns all blocks in a given content. * * @param string $content The content. * * @return array The blocks in a block-type => WP_Block_Parser_Block[] format. */ public function get_all_blocks_from_content( $content ) { if ( ! $this->has_blocks_support() ) { return []; } $collection = []; $blocks = \parse_blocks( $content ); return $this->collect_blocks( $blocks, $collection ); } /** * Checks if the installation has blocks support. * * @codeCoverageIgnore It only checks if a WordPress function exists. * * @return bool True when function parse_blocks exists. */ protected function has_blocks_support() { return \function_exists( 'parse_blocks' ); } /** * Collects an array of blocks into an organised collection. * * @param WP_Block_Parser_Block[] $blocks The blocks. * @param array $collection The collection. * * @return array The blocks in a block-type => WP_Block_Parser_Block[] format. */ private function collect_blocks( $blocks, $collection ) { foreach ( $blocks as $block ) { if ( empty( $block['blockName'] ) ) { continue; } if ( ! isset( $collection[ $block['blockName'] ] ) || ! \is_array( $collection[ $block['blockName'] ] ) ) { $collection[ $block['blockName'] ] = []; } $collection[ $block['blockName'] ][] = $block; if ( isset( $block['innerBlocks'] ) ) { $collection = $this->collect_blocks( $block['innerBlocks'], $collection ); } } return $collection; } }
[-] indexing-helper.php
[open]
[-] wordpress-helper.php
[open]
[-] string-helper.php
[open]
[-] social-profiles-helper.php
[open]
[-] short-link-helper.php
[open]
[-] sanitization-helper.php
[open]
[-] curl-helper.php
[open]
[-] permalink-helper.php
[open]
[-] notification-helper.php
[open]
[-] environment-helper.php
[open]
[-] pagination-helper.php
[open]
[+]
open-graph
[-] url-helper.php
[open]
[-] primary-term-helper.php
[open]
[-] user.cursor.php
[open]
[-] redirect-helper.php
[open]
[-] home-url-helper.php
[open]
[-] wpdb-helper.php
[open]
[-] require-file-helper.php
[open]
[-] site-helper.php
[open]
[-] post-type-helper.php
[open]
[-] asset-helper.php
[open]
[-] date-helper.php
[open]
[+]
schema
[-] options-helper.php
[open]
[-] import-cursor-helper.php
[open]
[-] taxonomy-helper.php
[open]
[-] post-helper.php
[open]
[-] attachment-cleanup-helper.php
[open]
[-] robots-txt-helper.php
[open]
[-] import-helper.php
[open]
[-] meta-helper.php
[open]
[-] score-icon-helper.php
[open]
[-] woocommerce-helper.php
[open]
[+]
twitter
[-] blocks-helper.php
[open]
[-] indexable-to-postmeta-helper.php
[open]
[-] language-helper.php
[open]
[+]
..
[-] user-helper.php
[open]
[-] wincher-helper.php
[open]
[-] author-archive-helper.php
[open]
[-] crawl-cleanup-helper.php
[open]
[-] image-helper.php
[open]
[-] first-time-configuration-notice-helper.php
[open]
[-] robots-helper.php
[open]
[-] route-helper.php
[open]
[-] product-helper.php
[open]
[-] capability-helper.php
[open]
[-] aioseo-helper.php
[open]
[-] indexable-helper.php
[open]
[-] current-page-helper.php
[open]