[wp-trac] [WordPress Trac] #39850: Wordpress embedded links drop query vars from URL
WordPress Trac
noreply at wordpress.org
Sat Feb 11 23:02:52 UTC 2017
#39850: Wordpress embedded links drop query vars from URL
-------------------------+-----------------------------
Reporter: charleslf | Owner:
Type: enhancement | Status: new
Priority: normal | Milestone: Awaiting Review
Component: Embeds | Version:
Severity: normal | Keywords:
Focuses: |
-------------------------+-----------------------------
When embedding a wordpress page within another post, any query strings
that are passed in the URL get dropped.
For example, if embedding http://example.com/page-name/?foo=bar, the
actual URL that gets passed to the oEmbed function (and later on to the
template files) is http://example.com/page-name/embed/ (foo=bar gets
dropped).
The link inside the blockquote also drops the url query variable and links
to http://example.com/page-name/ instead of http://example.com/page-
name/?foo=bar
As I see, this occurs because the `wp_filter_pre_oembed_result` function
in `embed.php` uses `url_to_postid` to get the embeded post's ID, and
later `get_post_embed_url` uses that ID to create the embed permalink. So
naturally any url query vars are not preserved in the final URL
construction.
Similarly in `get_post_embed_html`, the function uses `esc_url(
get_permalink( $post ) )`, thus reconstructing the permalink without
knowledge of the initial url.
I encountered this when embedded a specific photo gallery (from
nextcellent plugin), but I assume some other plugins such as
language/translation ones may also be affected.
I don't think the URL's should be dropping any of the query variables.
However, if that is a requirement, it would be good to also pass on the
original url in the `post_embed_url` hook to allow plugin developers to
make sure to add any parameters from the original url that got dropped off
in the embedded url.
--
Ticket URL: <https://core.trac.wordpress.org/ticket/39850>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform
More information about the wp-trac
mailing list