Embeds: Introduce `print_embed_comments_button()`, `print_embed_sharing_button()`, and `print_embed_sharing_dialog()`, which respectively output the comments button, sharing buttons, and sharing dialog elements in the embed template.
This change hooks these new output functions to existing hooks in the embed template, allowing for more straightforward display control of these elements. Leaves the embed header and footer intact pending further modularization in a future release. Props juliobox, swissspidy, DrewAPicture. See #34561. Built from https://develop.svn.wordpress.org/trunk@35689 git-svn-id: http://core.svn.wordpress.org/trunk@35653 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
e8d8e79371
commit
f94f58fbb1
|
@ -458,6 +458,10 @@ add_action( 'embed_head', 'wp_no_robots' );
|
||||||
add_action( 'embed_head', 'rel_canonical' );
|
add_action( 'embed_head', 'rel_canonical' );
|
||||||
add_action( 'embed_head', 'locale_stylesheet' );
|
add_action( 'embed_head', 'locale_stylesheet' );
|
||||||
|
|
||||||
|
add_action( 'embed_content_meta', 'print_embed_comments_button' );
|
||||||
|
add_action( 'embed_content_meta', 'print_embed_sharing_button' );
|
||||||
|
|
||||||
|
add_action( 'embed_footer', 'print_embed_sharing_dialog' );
|
||||||
add_action( 'embed_footer', 'print_embed_scripts' );
|
add_action( 'embed_footer', 'print_embed_scripts' );
|
||||||
add_action( 'embed_footer', 'wp_print_footer_scripts', 20 );
|
add_action( 'embed_footer', 'wp_print_footer_scripts', 20 );
|
||||||
|
|
||||||
|
|
|
@ -954,3 +954,94 @@ function print_embed_scripts() {
|
||||||
function _oembed_filter_feed_content( $content ) {
|
function _oembed_filter_feed_content( $content ) {
|
||||||
return str_replace( '<iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted" style="display:none;"', '<iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"', $content );
|
return str_replace( '<iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted" style="display:none;"', '<iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"', $content );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Prints the necessary markup for the embed comments button.
|
||||||
|
*
|
||||||
|
* @since 4.4.0
|
||||||
|
*/
|
||||||
|
function print_embed_comments_button() {
|
||||||
|
if ( is_404() || ! ( get_comments_number() || comments_open() ) ) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
<div class="wp-embed-comments">
|
||||||
|
<a href="<?php comments_link(); ?>" target="_top">
|
||||||
|
<span class="dashicons dashicons-admin-comments"></span>
|
||||||
|
<?php
|
||||||
|
printf(
|
||||||
|
_n(
|
||||||
|
'%s <span class="screen-reader-text">Comment</span>',
|
||||||
|
'%s <span class="screen-reader-text">Comments</span>',
|
||||||
|
get_comments_number()
|
||||||
|
),
|
||||||
|
number_format_i18n( get_comments_number() )
|
||||||
|
);
|
||||||
|
?>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<?php
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Prints the necessary markup for the embed sharing button.
|
||||||
|
*
|
||||||
|
* @since 4.4.0
|
||||||
|
*/
|
||||||
|
function print_embed_sharing_button() {
|
||||||
|
if ( is_404() ) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
<div class="wp-embed-share">
|
||||||
|
<button type="button" class="wp-embed-share-dialog-open" aria-label="<?php esc_attr_e( 'Open sharing dialog' ); ?>">
|
||||||
|
<span class="dashicons dashicons-share"></span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
<?php
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Prints the necessary markup for the embed sharing dialog.
|
||||||
|
*
|
||||||
|
* @since 4.4.0
|
||||||
|
*/
|
||||||
|
function print_embed_sharing_dialog() {
|
||||||
|
if ( is_404() ) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
<div class="wp-embed-share-dialog hidden" role="dialog" aria-label="<?php esc_attr_e( 'Sharing options' ); ?>">
|
||||||
|
<div class="wp-embed-share-dialog-content">
|
||||||
|
<div class="wp-embed-share-dialog-text">
|
||||||
|
<ul class="wp-embed-share-tabs" role="tablist">
|
||||||
|
<li class="wp-embed-share-tab-button wp-embed-share-tab-button-wordpress" role="presentation">
|
||||||
|
<button type="button" role="tab" aria-controls="wp-embed-share-tab-wordpress" aria-selected="true" tabindex="0"><?php esc_html_e( 'WordPress Embed' ); ?></button>
|
||||||
|
</li>
|
||||||
|
<li class="wp-embed-share-tab-button wp-embed-share-tab-button-html" role="presentation">
|
||||||
|
<button type="button" role="tab" aria-controls="wp-embed-share-tab-html" aria-selected="false" tabindex="-1"><?php esc_html_e( 'HTML Embed' ); ?></button>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<div id="wp-embed-share-tab-wordpress" class="wp-embed-share-tab" role="tabpanel" aria-hidden="false">
|
||||||
|
<input type="text" value="<?php the_permalink(); ?>" class="wp-embed-share-input" aria-describedby="wp-embed-share-description-wordpress" tabindex="0" readonly/>
|
||||||
|
|
||||||
|
<p class="wp-embed-share-description" id="wp-embed-share-description-wordpress">
|
||||||
|
<?php _e( 'Copy and paste this URL into your WordPress site to embed' ); ?>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div id="wp-embed-share-tab-html" class="wp-embed-share-tab" role="tabpanel" aria-hidden="true">
|
||||||
|
<textarea class="wp-embed-share-input" aria-describedby="wp-embed-share-description-html" tabindex="0" readonly><?php echo esc_textarea( get_post_embed_html( 600, 400 ) ); ?></textarea>
|
||||||
|
|
||||||
|
<p class="wp-embed-share-description" id="wp-embed-share-description-html">
|
||||||
|
<?php _e( 'Copy and paste this code into your site to embed' ); ?>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<button type="button" class="wp-embed-share-dialog-close" aria-label="<?php esc_attr_e( 'Close sharing dialog' ); ?>">
|
||||||
|
<span class="dashicons dashicons-no"></span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<?php
|
||||||
|
}
|
||||||
|
|
|
@ -149,60 +149,6 @@ if ( have_posts() ) :
|
||||||
*/
|
*/
|
||||||
do_action( 'embed_content_meta');
|
do_action( 'embed_content_meta');
|
||||||
?>
|
?>
|
||||||
<?php if ( get_comments_number() || comments_open() ) : ?>
|
|
||||||
<div class="wp-embed-comments">
|
|
||||||
<a href="<?php comments_link(); ?>" target="_top">
|
|
||||||
<span class="dashicons dashicons-admin-comments"></span>
|
|
||||||
<?php
|
|
||||||
printf(
|
|
||||||
_n(
|
|
||||||
'%s <span class="screen-reader-text">Comment</span>',
|
|
||||||
'%s <span class="screen-reader-text">Comments</span>',
|
|
||||||
get_comments_number()
|
|
||||||
),
|
|
||||||
number_format_i18n( get_comments_number() )
|
|
||||||
);
|
|
||||||
?>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<?php endif; ?>
|
|
||||||
<div class="wp-embed-share">
|
|
||||||
<button type="button" class="wp-embed-share-dialog-open" aria-label="<?php esc_attr_e( 'Open sharing dialog' ); ?>">
|
|
||||||
<span class="dashicons dashicons-share"></span>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="wp-embed-share-dialog hidden" role="dialog" aria-label="<?php esc_attr_e( 'Sharing options' ); ?>">
|
|
||||||
<div class="wp-embed-share-dialog-content">
|
|
||||||
<div class="wp-embed-share-dialog-text">
|
|
||||||
<ul class="wp-embed-share-tabs" role="tablist">
|
|
||||||
<li class="wp-embed-share-tab-button wp-embed-share-tab-button-wordpress" role="presentation">
|
|
||||||
<button type="button" role="tab" aria-controls="wp-embed-share-tab-wordpress" aria-selected="true" tabindex="0"><?php esc_html_e( 'WordPress Embed' ); ?></button>
|
|
||||||
</li>
|
|
||||||
<li class="wp-embed-share-tab-button wp-embed-share-tab-button-html" role="presentation">
|
|
||||||
<button type="button" role="tab" aria-controls="wp-embed-share-tab-html" aria-selected="false" tabindex="-1"><?php esc_html_e( 'HTML Embed' ); ?></button>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
<div id="wp-embed-share-tab-wordpress" class="wp-embed-share-tab" role="tabpanel" aria-hidden="false">
|
|
||||||
<input type="text" value="<?php the_permalink(); ?>" class="wp-embed-share-input" aria-describedby="wp-embed-share-description-wordpress" tabindex="0" readonly />
|
|
||||||
|
|
||||||
<p class="wp-embed-share-description" id="wp-embed-share-description-wordpress">
|
|
||||||
<?php _e( 'Copy and paste this URL into your WordPress site to embed' ); ?>
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
<div id="wp-embed-share-tab-html" class="wp-embed-share-tab" role="tabpanel" aria-hidden="true">
|
|
||||||
<textarea class="wp-embed-share-input" aria-describedby="wp-embed-share-description-html" tabindex="0" readonly><?php echo esc_textarea( get_post_embed_html( 600, 400 ) ); ?></textarea>
|
|
||||||
|
|
||||||
<p class="wp-embed-share-description" id="wp-embed-share-description-html">
|
|
||||||
<?php _e( 'Copy and paste this code into your site to embed' ); ?>
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<button type="button" class="wp-embed-share-dialog-close" aria-label="<?php esc_attr_e( 'Close sharing dialog' ); ?>">
|
|
||||||
<span class="dashicons dashicons-no"></span>
|
|
||||||
</button>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
*
|
*
|
||||||
* @global string $wp_version
|
* @global string $wp_version
|
||||||
*/
|
*/
|
||||||
$wp_version = '4.4-beta4-35688';
|
$wp_version = '4.4-beta4-35689';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
||||||
|
|
Loading…
Reference in New Issue