Changeset 3758984
- Timestamp:
- 10/21/2026 07:36:24 PM (3 weeks ago)
- Location:
- webmention
- Files:
-
- 6 added
- 2 deleted
- 18 edited
- 1 copied
-
tags/5.11.0 (copied) (copied from webmention/trunk )
-
tags/5.11.0/assets/css/webmention.css (modified) (1 diff)
-
tags/5.11.0/includes/class-comment-type.php (modified) (1 diff)
-
tags/5.11.0/includes/class-comment-walker.php (modified) (2 diffs)
-
tags/5.11.0/includes/class-comment.php (modified) (11 diffs)
-
tags/5.11.0/includes/debug.php (deleted)
-
tags/5.11.0/includes/handler/class-mf2.php (modified) (1 diff)
-
tags/5.11.0/integration (added)
-
tags/5.11.0/integration/class-activitypub.php (added)
-
tags/5.11.0/integration/load.php (added)
-
tags/5.11.0/readme.md (modified) (2 diffs)
-
tags/5.11.0/templates/api-message.php (modified) (1 diff)
-
tags/5.11.0/templates/endpoint-form.php (modified) (1 diff)
-
tags/5.11.0/webmention.php (modified) (3 diffs)
-
trunk/assets/css/webmention.css (modified) (1 diff)
-
trunk/includes/class-comment-type.php (modified) (1 diff)
-
trunk/includes/class-comment-walker.php (modified) (2 diffs)
-
trunk/includes/class-comment.php (modified) (11 diffs)
-
trunk/includes/debug.php (deleted)
-
trunk/includes/handler/class-mf2.php (modified) (1 diff)
-
trunk/integration (added)
-
trunk/integration/class-activitypub.php (added)
-
trunk/integration/load.php (added)
-
trunk/readme.md (modified) (2 diffs)
-
trunk/templates/api-message.php (modified) (1 diff)
-
trunk/templates/endpoint-form.php (modified) (1 diff)
-
trunk/webmention.php (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
webmention/tags/5.11.0/assets/css/webmention.css
r3731170 r3758984 73 73 bottom: 0; 74 74 right: 0; 75 line-height: 0; 76 color: #1e1e1e; 77 background-color: #fff; 78 border-radius: 50%; 79 } 80 81 .emoji-overlay svg, 82 .reaction-icon svg { 83 width: 1em; 84 height: 1em; 85 vertical-align: middle; 75 86 } 76 87 -
webmention/tags/5.11.0/includes/class-comment-type.php
r3423242 r3758984 34 34 35 35 /** 36 * Single Character Emoji Representation of the Comment Type. Optional. 36 * SVG Icon of the Comment Type. Optional. 37 * 38 * Defaults to the original `comment` SVG from `@wordpress/icons` 18.0.0. 37 39 * 38 40 * @var string $icon 39 41 */ 40 public $icon = ' 💬';42 public $icon = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M18 5.5H6C5.30964 5.5 4.75 6.05964 4.75 6.75V16V18.4096C4.75 18.8725 5.32471 19.0869 5.62784 18.7371L8 16H18C18.6904 16 19.25 15.4404 19.25 14.75V6.75C19.25 6.05964 18.6904 5.5 18 5.5Z" vector-effect="non-scaling-stroke" /></svg>'; 41 43 42 44 /** -
webmention/tags/5.11.0/includes/class-comment-walker.php
r3748985 r3758984 162 162 $overlay = ''; 163 163 if ( $args['overlay'] && $has_avatar ) { 164 $overlay = '<span class="emoji-overlay" >' . $icon . '</span>';164 $overlay = '<span class="emoji-overlay" aria-hidden="true">' . $icon . '</span>'; 165 165 } 166 166 … … 182 182 <?php echo $overlay; ?> 183 183 <?php else : ?> 184 <span class="reaction-icon" ><?php echo $icon; ?></span>184 <span class="reaction-icon" aria-hidden="true"><?php echo $icon; ?></span> 185 185 <?php endif; ?> 186 186 </a> -
webmention/tags/5.11.0/includes/class-comment.php
r3423242 r3758984 101 101 * Register the comment types used by the Webmention plugin 102 102 * 103 * The icons are the original SVGs from `@wordpress/icons` 18.0.0 104 * (`packages/icons/src/library`): repost `update`, like `thumbs-up`, 105 * favorite `star-filled`, tag `tag`, bookmark `pin`, listen `audio`, 106 * watch `video`, read `page`, follow `people` and mention `comment`. 107 * 103 108 * @return void 104 109 */ … … 110 115 'singular' => __( 'Repost', 'webmention' ), 111 116 'description' => __( 'A repost on the indieweb is a post that is purely a 100% re-publication of another (typically someone else\'s) post.', 'webmention' ), 112 'icon' => ' ♻️',117 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M12 5.5L17.7929 11.2929C18.1834 11.6834 18.1834 12.3166 17.7929 12.7071L16 14.5M16 5.5H12V9.5M12 18.5L6.20711 12.7071C5.81658 12.3166 5.81658 11.6834 6.20711 11.2929L8 9.5M8 18.5H12V14.5" vector-effect="non-scaling-stroke" /></svg>', 113 118 'class' => 'p-repost', 114 119 // translators: %1$s username, %2$s opject format (post, audio, ...), %3$s URL, %4$s domain … … 123 128 'singular' => __( 'Like', 'webmention' ), 124 129 'description' => __( 'A like is a popular webaction button and in some cases post type on various silos such as Facebook and Instagram.', 'webmention' ), 125 'icon' => ' 👍',130 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M4.00002 12L5.00001 20M13.2295 4.75C12.7709 4.75 12.3398 4.96848 12.0686 5.33829L7.06032 12.1678C7.02166 12.2205 7.00519 12.2862 7.01443 12.351L7.87735 18.3914C7.94773 18.8841 8.36965 19.25 8.8673 19.25L17.2725 19.25C17.7062 19.25 18.0905 18.9705 18.224 18.5578L20.2211 12.3848C20.4823 11.5774 19.8804 10.75 19.0318 10.75L14.9758 10.75C14.3435 10.75 13.8711 10.1689 14 9.55L14.6389 6.48326C14.8252 5.58927 14.1427 4.75 13.2295 4.75Z" vector-effect="non-scaling-stroke" /></svg>', 126 131 'class' => 'p-like', 127 132 // translators: %1$s username, %2$s opject format (post, audio, ...), %3$s URL, %4$s domain … … 136 141 'singular' => __( 'Favorite', 'webmention' ), 137 142 'description' => __( 'A favorite is a common webaction on many silos (like Flickr, Twitter), typically visually indicated with a star symbol that fills in with a color when activated (pink, orange).', 'webmention' ), 138 'icon' => ' ⭐',143 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M12 5.71576L13.6106 8.97924C13.7563 9.27438 14.0379 9.47895 14.3636 9.52628L17.965 10.0496L15.359 12.5899C15.1233 12.8196 15.0157 13.1506 15.0714 13.475L15.6866 17.0619L12.4653 15.3684C12.174 15.2152 11.826 15.2152 11.5347 15.3684L8.31341 17.0619L8.92861 13.475C8.98425 13.1506 8.8767 12.8196 8.64102 12.5899L6.03497 10.0496L9.63644 9.52628C9.96215 9.47895 10.2437 9.27438 10.3894 8.97924L12 5.71576Z" fill="currentColor" vector-effect="non-scaling-stroke" /></svg>', 139 144 'class' => 'p-favorite', 140 145 // translators: %1$s username, %2$s opject format (post, audio, ...), %3$s URL, %4$s domain … … 149 154 'singular' => __( 'Tag', 'webmention' ), 150 155 'description' => __( 'Tags or tagging refers to categorizing or labeling content, your own or others (tag-reply), with words, phrases, names, or other information, optionally linked to specific people, events, locations, such as the practice of tagging posts being about certain people (person-tag), like tagging people or other items where (area-tag) they\'re depicted in a photo.', 'webmention' ), 151 'icon' => ' 📌',156 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M4.75 12.5429V4.85C4.75 4.79477 4.79477 4.75 4.85 4.75H12.5429C12.6755 4.75 12.8027 4.80268 12.8964 4.89645L20.1464 12.1464C20.3417 12.3417 20.3417 12.6583 20.1464 12.8536L12.8536 20.1464C12.6583 20.3417 12.3417 20.3417 12.1464 20.1464L4.89645 12.8964C4.80268 12.8027 4.75 12.6755 4.75 12.5429Z" vector-effect="non-scaling-stroke" /><path d="M9.75 8.75a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z" fill="currentColor" stroke="none" /></svg>', 152 157 'class' => 'p-tag', 153 158 // translators: %1$s username, %2$s opject format (post, audio, ...), %3$s URL, %4$s domain … … 162 167 'singular' => __( 'Bookmark', 'webmention' ), 163 168 'description' => __( 'A bookmark (or linkblog) is a post that is primarily comprised of a URL, often title text from that URL, sometimes optional text describing, tagging, or quoting from its contents.', 'webmention' ), 164 'icon' => ' 🔖',169 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M5 19L10 14M13.5355 17.5355L6.46447 10.4645C7.731 9.19794 9.50794 8.75292 11.1332 9.12941L14.5 4.50002L19.5 9.50002L14.8706 12.8669C15.2471 14.4921 14.8021 16.269 13.5355 17.5355Z" vector-effect="non-scaling-stroke" /></svg>', 165 170 'class' => 'p-bookmark', 166 171 // translators: %1$s username, %2$s opject format (post, audio, ...), %3$s URL, %4$s domain … … 175 180 'singular' => __( 'Listen', 'webmention' ), 176 181 'description' => __( 'A "listen" is a passive type of post used to publish a song (music or audio track, including concert recordings or DJ sets) or podcast that you have listened to.', 'webmention' ), 177 'icon' => ' 🎧',182 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M13.25 16.5C13.25 18.0188 12.0188 19.25 10.5 19.25C8.98122 19.25 7.75 18.0188 7.75 16.5C7.75 14.9812 8.98122 13.75 10.5 13.75C12.0188 13.75 13.25 14.9812 13.25 16.5Z" fill="currentColor" stroke="none" /><path d="M10.5 19.25C12.0188 19.25 13.25 18.0188 13.25 16.5C13.25 14.9812 12.0188 13.75 10.5 13.75C8.98122 13.75 7.75 14.9812 7.75 16.5C7.75 18.0188 8.98122 19.25 10.5 19.25ZM10.5 19.25C13.4867 19.25 13.75 16.5 13.75 15.1379V7.99998C13.75 4.9108 16.4 5.00254 18 5.00233" vector-effect="non-scaling-stroke" /></svg>', 178 183 'class' => 'p-listen', 179 184 // translators: %1$s username, %2$s opject format (post, audio, ...), %3$s URL, %4$s domain … … 188 193 'singular' => __( 'Watch', 'webmention' ), 189 194 'description' => __( 'A watch is a semi-passive type of post used to publish that you have watched a video (movie, TV, film), or a live show (theater, concert).', 'webmention' ), 190 'icon' => ' 📺',195 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M10 15L15 12L10 9V15Z" fill="currentColor" stroke="none" /><path d="M4.75 6C4.75 5.30964 5.30964 4.75 6 4.75H18C18.6904 4.75 19.25 5.30964 19.25 6V18C19.25 18.6904 18.6904 19.25 18 19.25H6C5.30964 19.25 4.75 18.6904 4.75 18V6Z" vector-effect="non-scaling-stroke" /></svg>', 191 196 'class' => 'p-watch', 192 197 // translators: %1$s username, %2$s opject format (post, audio, ...), %3$s URL, %4$s domain … … 200 205 'label' => __( 'Reads', 'webmention' ), 201 206 'singular' => __( 'Read', 'webmention' ), 202 'icon' => ' 📖',207 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M8.5 8.25H15.5M8.5 11.75H15.5M8.5 15.25H15.5M18.25 18V6C18.25 5.30964 17.6904 4.75 17 4.75H7C6.30964 4.75 5.75 5.30964 5.75 6L5.75 18C5.75 18.6904 6.30964 19.25 7 19.25H17C17.6904 19.25 18.25 18.6904 18.25 18Z" vector-effect="non-scaling-stroke" /></svg>', 203 208 'class' => 'p-read', 204 209 'description' => __( 'To read or reading is the act of viewing and interpreting posts or other documents; on the IndieWeb, a read post expresses that something has been read, like a book or section thereof.', 'webmention' ), … … 214 219 'singular' => __( 'Follow', 'webmention' ), 215 220 'description' => __( 'Follow is a common feature (and often UI button) in silo UIs (like Twitter) that adds updates from that profile (typically a person) to the stream shown in an integrated reader, and sometimes creates a follow post either in the follower\'s stream ("… followed …" or "… is following …") thus visible to their followers, and/or in the notifications of the user being followed ("… followed you").', 'webmention' ), 216 'icon' => ' 👣',221 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M4.5 17V15C4.5 13.8954 5.39543 13 6.5 13H10.5C11.6046 13 12.5 13.8954 12.5 15V17M15 13H17.5C18.6046 13 19.5 13.8954 19.5 15V17M10.25 8.5C10.25 9.4665 9.4665 10.25 8.5 10.25C7.5335 10.25 6.75 9.4665 6.75 8.5C6.75 7.5335 7.5335 6.75 8.5 6.75C9.4665 6.75 10.25 7.5335 10.25 8.5ZM17.25 8.5C17.25 9.4665 16.4665 10.25 15.5 10.25C14.5335 10.25 13.75 9.4665 13.75 8.5C13.75 7.5335 14.5335 6.75 15.5 6.75C16.4665 6.75 17.25 7.5335 17.25 8.5Z" vector-effect="non-scaling-stroke" /></svg>', 217 222 'class' => 'p-follow', 218 223 // translators: %1$s username, %2$s opject format (post, audio, ...), %3$s URL, %4$s domain … … 227 232 'singular' => __( 'Mention', 'webmention' ), 228 233 'description' => __( 'A mention is a post which links to another post without explicitly being in response to it. In contrast, a reply, like, or repost are explicit responses to a post.', 'webmention' ), 229 'icon' => ' 💬',234 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M18 5.5H6C5.30964 5.5 4.75 6.05964 4.75 6.75V16V18.4096C4.75 18.8725 5.32471 19.0869 5.62784 18.7371L8 16H18C18.6904 16 19.25 15.4404 19.25 14.75V6.75C19.25 6.05964 18.6904 5.5 18 5.5Z" vector-effect="non-scaling-stroke" /></svg>', 230 235 'class' => 'p-mention', 231 236 // translators: %1$s username, %2$s opject format (post, audio, ...), %3$s URL, %4$s domain -
webmention/tags/5.11.0/includes/handler/class-mf2.php
r3494831 r3758984 147 147 } 148 148 149 // If debugging is on just validate that URL is validly formatted150 if ( WP_DEBUG ) {151 return filter_var( $str, FILTER_VALIDATE_URL ) !== false;152 }153 154 // If debugging is off limit based on WordPress parameters155 149 return wp_http_validate_url( $str ); 156 150 } -
webmention/tags/5.11.0/readme.md
r3748985 r3758984 6 6 - Requires at least: 6.2 7 7 - Tested up to: 7.1 8 - Stable tag: 5.1 0.28 - Stable tag: 5.11.0 9 9 - Requires PHP: 7.4 10 10 - License: MIT … … 119 119 120 120 Project and support maintained on github at [pfefferle/wordpress-webmention](https://github.com/pfefferle/wordpress-webmention). 121 122 ### 5.11.0 123 124 * Security: Move the debug helpers to `local/`, with `WP_DEBUG` on they turned off `reject_unsafe_urls` for every outbound request on the site and let `MF2::is_url()` accept every well-formed URL 125 * Integrate with the ActivityPub reactions block: it shows all Webmention types and replaces the Webmention facepile where it is used 126 * Use SVG icons from `@wordpress/icons` instead of emojis for the comment types 127 * Replace the deprecated `wp_no_robots()` with the `wp_robots` filter 128 * Update dependencies 121 129 122 130 ### 5.10.2 -
webmention/tags/5.11.0/templates/api-message.php
r3583033 r3758984 5 5 <meta name="viewport" content="width=device-width"> 6 6 <?php 7 if ( function_exists( 'wp_no_robots' ) ) { 8 wp_no_robots(); 9 } 7 add_filter( 'wp_robots', 'wp_robots_no_robots' ); 8 wp_robots(); 10 9 ?> 11 10 <title><?php _e( 'Webmention Endpoint', 'webmention' ); ?></title> -
webmention/tags/5.11.0/templates/endpoint-form.php
r3729672 r3758984 5 5 <meta name="viewport" content="width=device-width"> 6 6 <?php 7 if ( function_exists( 'wp_no_robots' ) ) { 8 wp_no_robots(); 9 } 7 add_filter( 'wp_robots', 'wp_robots_no_robots' ); 8 wp_robots(); 10 9 ?> 11 10 <title><?php esc_html_e( 'Webmention Endpoint', 'webmention' ); ?></title> -
webmention/tags/5.11.0/webmention.php
r3748985 r3758984 6 6 * Author: Matthias Pfefferle 7 7 * Author URI: https://notiz.blog/ 8 * Version: 5.1 0.28 * Version: 5.11.0 9 9 * Requires at least: 6.2 10 10 * Requires PHP: 7.4 … … 17 17 namespace Webmention; 18 18 19 \define( 'WEBMENTION_VERSION', '5.1 0.2' );19 \define( 'WEBMENTION_VERSION', '5.11.0' ); 20 20 21 21 \define( 'WEBMENTION_PLUGIN_DIR', \plugin_dir_path( __FILE__ ) ); … … 27 27 require_once WEBMENTION_PLUGIN_DIR . 'includes/functions.php'; 28 28 29 if ( \WP_DEBUG ) { 30 require_once WEBMENTION_PLUGIN_DIR . 'includes/debug.php'; 29 // Load development tools. 30 if ( 'local' === \wp_get_environment_type() ) { 31 $loader_file = WEBMENTION_PLUGIN_DIR . 'local/load.php'; 32 if ( \file_exists( $loader_file ) && \is_readable( $loader_file ) ) { 33 require_once $loader_file; 34 } 31 35 } 32 36 33 37 // Register the autoloader. 34 38 Autoloader::register_path( __NAMESPACE__, WEBMENTION_PLUGIN_DIR . 'includes' ); 39 40 require_once WEBMENTION_PLUGIN_DIR . 'integration/load.php'; 35 41 36 42 // Initialize the plugin. -
webmention/trunk/assets/css/webmention.css
r3731170 r3758984 73 73 bottom: 0; 74 74 right: 0; 75 line-height: 0; 76 color: #1e1e1e; 77 background-color: #fff; 78 border-radius: 50%; 79 } 80 81 .emoji-overlay svg, 82 .reaction-icon svg { 83 width: 1em; 84 height: 1em; 85 vertical-align: middle; 75 86 } 76 87 -
webmention/trunk/includes/class-comment-type.php
r3423242 r3758984 34 34 35 35 /** 36 * Single Character Emoji Representation of the Comment Type. Optional. 36 * SVG Icon of the Comment Type. Optional. 37 * 38 * Defaults to the original `comment` SVG from `@wordpress/icons` 18.0.0. 37 39 * 38 40 * @var string $icon 39 41 */ 40 public $icon = ' 💬';42 public $icon = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M18 5.5H6C5.30964 5.5 4.75 6.05964 4.75 6.75V16V18.4096C4.75 18.8725 5.32471 19.0869 5.62784 18.7371L8 16H18C18.6904 16 19.25 15.4404 19.25 14.75V6.75C19.25 6.05964 18.6904 5.5 18 5.5Z" vector-effect="non-scaling-stroke" /></svg>'; 41 43 42 44 /** -
webmention/trunk/includes/class-comment-walker.php
r3748985 r3758984 162 162 $overlay = ''; 163 163 if ( $args['overlay'] && $has_avatar ) { 164 $overlay = '<span class="emoji-overlay" >' . $icon . '</span>';164 $overlay = '<span class="emoji-overlay" aria-hidden="true">' . $icon . '</span>'; 165 165 } 166 166 … … 182 182 <?php echo $overlay; ?> 183 183 <?php else : ?> 184 <span class="reaction-icon" ><?php echo $icon; ?></span>184 <span class="reaction-icon" aria-hidden="true"><?php echo $icon; ?></span> 185 185 <?php endif; ?> 186 186 </a> -
webmention/trunk/includes/class-comment.php
r3423242 r3758984 101 101 * Register the comment types used by the Webmention plugin 102 102 * 103 * The icons are the original SVGs from `@wordpress/icons` 18.0.0 104 * (`packages/icons/src/library`): repost `update`, like `thumbs-up`, 105 * favorite `star-filled`, tag `tag`, bookmark `pin`, listen `audio`, 106 * watch `video`, read `page`, follow `people` and mention `comment`. 107 * 103 108 * @return void 104 109 */ … … 110 115 'singular' => __( 'Repost', 'webmention' ), 111 116 'description' => __( 'A repost on the indieweb is a post that is purely a 100% re-publication of another (typically someone else\'s) post.', 'webmention' ), 112 'icon' => ' ♻️',117 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M12 5.5L17.7929 11.2929C18.1834 11.6834 18.1834 12.3166 17.7929 12.7071L16 14.5M16 5.5H12V9.5M12 18.5L6.20711 12.7071C5.81658 12.3166 5.81658 11.6834 6.20711 11.2929L8 9.5M8 18.5H12V14.5" vector-effect="non-scaling-stroke" /></svg>', 113 118 'class' => 'p-repost', 114 119 // translators: %1$s username, %2$s opject format (post, audio, ...), %3$s URL, %4$s domain … … 123 128 'singular' => __( 'Like', 'webmention' ), 124 129 'description' => __( 'A like is a popular webaction button and in some cases post type on various silos such as Facebook and Instagram.', 'webmention' ), 125 'icon' => ' 👍',130 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M4.00002 12L5.00001 20M13.2295 4.75C12.7709 4.75 12.3398 4.96848 12.0686 5.33829L7.06032 12.1678C7.02166 12.2205 7.00519 12.2862 7.01443 12.351L7.87735 18.3914C7.94773 18.8841 8.36965 19.25 8.8673 19.25L17.2725 19.25C17.7062 19.25 18.0905 18.9705 18.224 18.5578L20.2211 12.3848C20.4823 11.5774 19.8804 10.75 19.0318 10.75L14.9758 10.75C14.3435 10.75 13.8711 10.1689 14 9.55L14.6389 6.48326C14.8252 5.58927 14.1427 4.75 13.2295 4.75Z" vector-effect="non-scaling-stroke" /></svg>', 126 131 'class' => 'p-like', 127 132 // translators: %1$s username, %2$s opject format (post, audio, ...), %3$s URL, %4$s domain … … 136 141 'singular' => __( 'Favorite', 'webmention' ), 137 142 'description' => __( 'A favorite is a common webaction on many silos (like Flickr, Twitter), typically visually indicated with a star symbol that fills in with a color when activated (pink, orange).', 'webmention' ), 138 'icon' => ' ⭐',143 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M12 5.71576L13.6106 8.97924C13.7563 9.27438 14.0379 9.47895 14.3636 9.52628L17.965 10.0496L15.359 12.5899C15.1233 12.8196 15.0157 13.1506 15.0714 13.475L15.6866 17.0619L12.4653 15.3684C12.174 15.2152 11.826 15.2152 11.5347 15.3684L8.31341 17.0619L8.92861 13.475C8.98425 13.1506 8.8767 12.8196 8.64102 12.5899L6.03497 10.0496L9.63644 9.52628C9.96215 9.47895 10.2437 9.27438 10.3894 8.97924L12 5.71576Z" fill="currentColor" vector-effect="non-scaling-stroke" /></svg>', 139 144 'class' => 'p-favorite', 140 145 // translators: %1$s username, %2$s opject format (post, audio, ...), %3$s URL, %4$s domain … … 149 154 'singular' => __( 'Tag', 'webmention' ), 150 155 'description' => __( 'Tags or tagging refers to categorizing or labeling content, your own or others (tag-reply), with words, phrases, names, or other information, optionally linked to specific people, events, locations, such as the practice of tagging posts being about certain people (person-tag), like tagging people or other items where (area-tag) they\'re depicted in a photo.', 'webmention' ), 151 'icon' => ' 📌',156 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M4.75 12.5429V4.85C4.75 4.79477 4.79477 4.75 4.85 4.75H12.5429C12.6755 4.75 12.8027 4.80268 12.8964 4.89645L20.1464 12.1464C20.3417 12.3417 20.3417 12.6583 20.1464 12.8536L12.8536 20.1464C12.6583 20.3417 12.3417 20.3417 12.1464 20.1464L4.89645 12.8964C4.80268 12.8027 4.75 12.6755 4.75 12.5429Z" vector-effect="non-scaling-stroke" /><path d="M9.75 8.75a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z" fill="currentColor" stroke="none" /></svg>', 152 157 'class' => 'p-tag', 153 158 // translators: %1$s username, %2$s opject format (post, audio, ...), %3$s URL, %4$s domain … … 162 167 'singular' => __( 'Bookmark', 'webmention' ), 163 168 'description' => __( 'A bookmark (or linkblog) is a post that is primarily comprised of a URL, often title text from that URL, sometimes optional text describing, tagging, or quoting from its contents.', 'webmention' ), 164 'icon' => ' 🔖',169 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M5 19L10 14M13.5355 17.5355L6.46447 10.4645C7.731 9.19794 9.50794 8.75292 11.1332 9.12941L14.5 4.50002L19.5 9.50002L14.8706 12.8669C15.2471 14.4921 14.8021 16.269 13.5355 17.5355Z" vector-effect="non-scaling-stroke" /></svg>', 165 170 'class' => 'p-bookmark', 166 171 // translators: %1$s username, %2$s opject format (post, audio, ...), %3$s URL, %4$s domain … … 175 180 'singular' => __( 'Listen', 'webmention' ), 176 181 'description' => __( 'A "listen" is a passive type of post used to publish a song (music or audio track, including concert recordings or DJ sets) or podcast that you have listened to.', 'webmention' ), 177 'icon' => ' 🎧',182 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M13.25 16.5C13.25 18.0188 12.0188 19.25 10.5 19.25C8.98122 19.25 7.75 18.0188 7.75 16.5C7.75 14.9812 8.98122 13.75 10.5 13.75C12.0188 13.75 13.25 14.9812 13.25 16.5Z" fill="currentColor" stroke="none" /><path d="M10.5 19.25C12.0188 19.25 13.25 18.0188 13.25 16.5C13.25 14.9812 12.0188 13.75 10.5 13.75C8.98122 13.75 7.75 14.9812 7.75 16.5C7.75 18.0188 8.98122 19.25 10.5 19.25ZM10.5 19.25C13.4867 19.25 13.75 16.5 13.75 15.1379V7.99998C13.75 4.9108 16.4 5.00254 18 5.00233" vector-effect="non-scaling-stroke" /></svg>', 178 183 'class' => 'p-listen', 179 184 // translators: %1$s username, %2$s opject format (post, audio, ...), %3$s URL, %4$s domain … … 188 193 'singular' => __( 'Watch', 'webmention' ), 189 194 'description' => __( 'A watch is a semi-passive type of post used to publish that you have watched a video (movie, TV, film), or a live show (theater, concert).', 'webmention' ), 190 'icon' => ' 📺',195 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M10 15L15 12L10 9V15Z" fill="currentColor" stroke="none" /><path d="M4.75 6C4.75 5.30964 5.30964 4.75 6 4.75H18C18.6904 4.75 19.25 5.30964 19.25 6V18C19.25 18.6904 18.6904 19.25 18 19.25H6C5.30964 19.25 4.75 18.6904 4.75 18V6Z" vector-effect="non-scaling-stroke" /></svg>', 191 196 'class' => 'p-watch', 192 197 // translators: %1$s username, %2$s opject format (post, audio, ...), %3$s URL, %4$s domain … … 200 205 'label' => __( 'Reads', 'webmention' ), 201 206 'singular' => __( 'Read', 'webmention' ), 202 'icon' => ' 📖',207 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M8.5 8.25H15.5M8.5 11.75H15.5M8.5 15.25H15.5M18.25 18V6C18.25 5.30964 17.6904 4.75 17 4.75H7C6.30964 4.75 5.75 5.30964 5.75 6L5.75 18C5.75 18.6904 6.30964 19.25 7 19.25H17C17.6904 19.25 18.25 18.6904 18.25 18Z" vector-effect="non-scaling-stroke" /></svg>', 203 208 'class' => 'p-read', 204 209 'description' => __( 'To read or reading is the act of viewing and interpreting posts or other documents; on the IndieWeb, a read post expresses that something has been read, like a book or section thereof.', 'webmention' ), … … 214 219 'singular' => __( 'Follow', 'webmention' ), 215 220 'description' => __( 'Follow is a common feature (and often UI button) in silo UIs (like Twitter) that adds updates from that profile (typically a person) to the stream shown in an integrated reader, and sometimes creates a follow post either in the follower\'s stream ("… followed …" or "… is following …") thus visible to their followers, and/or in the notifications of the user being followed ("… followed you").', 'webmention' ), 216 'icon' => ' 👣',221 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M4.5 17V15C4.5 13.8954 5.39543 13 6.5 13H10.5C11.6046 13 12.5 13.8954 12.5 15V17M15 13H17.5C18.6046 13 19.5 13.8954 19.5 15V17M10.25 8.5C10.25 9.4665 9.4665 10.25 8.5 10.25C7.5335 10.25 6.75 9.4665 6.75 8.5C6.75 7.5335 7.5335 6.75 8.5 6.75C9.4665 6.75 10.25 7.5335 10.25 8.5ZM17.25 8.5C17.25 9.4665 16.4665 10.25 15.5 10.25C14.5335 10.25 13.75 9.4665 13.75 8.5C13.75 7.5335 14.5335 6.75 15.5 6.75C16.4665 6.75 17.25 7.5335 17.25 8.5Z" vector-effect="non-scaling-stroke" /></svg>', 217 222 'class' => 'p-follow', 218 223 // translators: %1$s username, %2$s opject format (post, audio, ...), %3$s URL, %4$s domain … … 227 232 'singular' => __( 'Mention', 'webmention' ), 228 233 'description' => __( 'A mention is a post which links to another post without explicitly being in response to it. In contrast, a reply, like, or repost are explicit responses to a post.', 'webmention' ), 229 'icon' => ' 💬',234 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none" stroke="currentColor" stroke-width="1.5"><path d="M18 5.5H6C5.30964 5.5 4.75 6.05964 4.75 6.75V16V18.4096C4.75 18.8725 5.32471 19.0869 5.62784 18.7371L8 16H18C18.6904 16 19.25 15.4404 19.25 14.75V6.75C19.25 6.05964 18.6904 5.5 18 5.5Z" vector-effect="non-scaling-stroke" /></svg>', 230 235 'class' => 'p-mention', 231 236 // translators: %1$s username, %2$s opject format (post, audio, ...), %3$s URL, %4$s domain -
webmention/trunk/includes/handler/class-mf2.php
r3494831 r3758984 147 147 } 148 148 149 // If debugging is on just validate that URL is validly formatted150 if ( WP_DEBUG ) {151 return filter_var( $str, FILTER_VALIDATE_URL ) !== false;152 }153 154 // If debugging is off limit based on WordPress parameters155 149 return wp_http_validate_url( $str ); 156 150 } -
webmention/trunk/readme.md
r3748985 r3758984 6 6 - Requires at least: 6.2 7 7 - Tested up to: 7.1 8 - Stable tag: 5.1 0.28 - Stable tag: 5.11.0 9 9 - Requires PHP: 7.4 10 10 - License: MIT … … 119 119 120 120 Project and support maintained on github at [pfefferle/wordpress-webmention](https://github.com/pfefferle/wordpress-webmention). 121 122 ### 5.11.0 123 124 * Security: Move the debug helpers to `local/`, with `WP_DEBUG` on they turned off `reject_unsafe_urls` for every outbound request on the site and let `MF2::is_url()` accept every well-formed URL 125 * Integrate with the ActivityPub reactions block: it shows all Webmention types and replaces the Webmention facepile where it is used 126 * Use SVG icons from `@wordpress/icons` instead of emojis for the comment types 127 * Replace the deprecated `wp_no_robots()` with the `wp_robots` filter 128 * Update dependencies 121 129 122 130 ### 5.10.2 -
webmention/trunk/templates/api-message.php
r3583033 r3758984 5 5 <meta name="viewport" content="width=device-width"> 6 6 <?php 7 if ( function_exists( 'wp_no_robots' ) ) { 8 wp_no_robots(); 9 } 7 add_filter( 'wp_robots', 'wp_robots_no_robots' ); 8 wp_robots(); 10 9 ?> 11 10 <title><?php _e( 'Webmention Endpoint', 'webmention' ); ?></title> -
webmention/trunk/templates/endpoint-form.php
r3729672 r3758984 5 5 <meta name="viewport" content="width=device-width"> 6 6 <?php 7 if ( function_exists( 'wp_no_robots' ) ) { 8 wp_no_robots(); 9 } 7 add_filter( 'wp_robots', 'wp_robots_no_robots' ); 8 wp_robots(); 10 9 ?> 11 10 <title><?php esc_html_e( 'Webmention Endpoint', 'webmention' ); ?></title> -
webmention/trunk/webmention.php
r3748985 r3758984 6 6 * Author: Matthias Pfefferle 7 7 * Author URI: https://notiz.blog/ 8 * Version: 5.1 0.28 * Version: 5.11.0 9 9 * Requires at least: 6.2 10 10 * Requires PHP: 7.4 … … 17 17 namespace Webmention; 18 18 19 \define( 'WEBMENTION_VERSION', '5.1 0.2' );19 \define( 'WEBMENTION_VERSION', '5.11.0' ); 20 20 21 21 \define( 'WEBMENTION_PLUGIN_DIR', \plugin_dir_path( __FILE__ ) ); … … 27 27 require_once WEBMENTION_PLUGIN_DIR . 'includes/functions.php'; 28 28 29 if ( \WP_DEBUG ) { 30 require_once WEBMENTION_PLUGIN_DIR . 'includes/debug.php'; 29 // Load development tools. 30 if ( 'local' === \wp_get_environment_type() ) { 31 $loader_file = WEBMENTION_PLUGIN_DIR . 'local/load.php'; 32 if ( \file_exists( $loader_file ) && \is_readable( $loader_file ) ) { 33 require_once $loader_file; 34 } 31 35 } 32 36 33 37 // Register the autoloader. 34 38 Autoloader::register_path( __NAMESPACE__, WEBMENTION_PLUGIN_DIR . 'includes' ); 39 40 require_once WEBMENTION_PLUGIN_DIR . 'integration/load.php'; 35 41 36 42 // Initialize the plugin.
Note:
See TracChangeset
for help on using the changeset viewer.