PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.17.3
GiveWP – Donation Plugin and Fundraising Platform v2.17.3
4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / src / Shims / blocks.php
give / src / Shims Last commit date
ShimsServiceProvider.php 4 years ago blocks.php 4 years ago
blocks.php
88 lines
1 <?php
2
3 if ( ! function_exists('get_comment_delimited_block_content')) {
4 /**
5 * Returns the content of a block, including comment delimiters.
6 *
7 * @since 5.3.1
8 *
9 * @param string|null $block_name Block name. Null if the block name is unknown,
10 * e.g. Classic blocks have their name set to null.
11 * @param array $block_attributes Block attributes.
12 * @param string $block_content Block save content.
13 *
14 * @return string Comment-delimited block content.
15 */
16 function get_comment_delimited_block_content($block_name, $block_attributes, $block_content)
17 {
18 if (is_null($block_name)) {
19 return $block_content;
20 }
21
22 $serialized_block_name = strip_core_block_namespace($block_name);
23 $serialized_attributes = empty($block_attributes) ? '' : serialize_block_attributes($block_attributes) . ' ';
24
25 if (empty($block_content)) {
26 return sprintf('<!-- wp:%s %s/-->', $serialized_block_name, $serialized_attributes);
27 }
28
29 return sprintf(
30 '<!-- wp:%s %s-->%s<!-- /wp:%s -->',
31 $serialized_block_name,
32 $serialized_attributes,
33 $block_content,
34 $serialized_block_name
35 );
36 }
37 }
38
39 if ( ! function_exists('strip_core_block_namespace')) {
40 /**
41 * Returns the block name to use for serialization. This will remove the default
42 * "core/" namespace from a block name.
43 *
44 * @since 5.3.1
45 *
46 * @param string $block_name Original block name.
47 *
48 * @return string Block name to use for serialization.
49 */
50 function strip_core_block_namespace($block_name = null)
51 {
52 if (is_string($block_name) && 0 === strpos($block_name, 'core/')) {
53 return substr($block_name, 5);
54 }
55
56 return $block_name;
57 }
58 }
59
60 if ( ! function_exists('serialize_block_attributes')) {
61 /**
62 * Given an array of attributes, returns a string in the serialized attributes
63 * format prepared for post content.
64 *
65 * The serialized result is a JSON-encoded string, with unicode escape sequence
66 * substitution for characters which might otherwise interfere with embedding
67 * the result in an HTML comment.
68 *
69 * @since 5.3.1
70 *
71 * @param array $block_attributes Attributes object.
72 *
73 * @return string Serialized attributes.
74 */
75 function serialize_block_attributes($block_attributes)
76 {
77 $encoded_attributes = json_encode($block_attributes);
78 $encoded_attributes = preg_replace('/--/', '\\u002d\\u002d', $encoded_attributes);
79 $encoded_attributes = preg_replace('/</', '\\u003c', $encoded_attributes);
80 $encoded_attributes = preg_replace('/>/', '\\u003e', $encoded_attributes);
81 $encoded_attributes = preg_replace('/&/', '\\u0026', $encoded_attributes);
82 // Regex: /\\"/
83 $encoded_attributes = preg_replace('/\\\\"/', '\\u0022', $encoded_attributes);
84
85 return $encoded_attributes;
86 }
87 }
88