[wp-trac] [WordPress Trac] #37160: Pingbacks fail on multi-page posts
WordPress Trac
noreply at wordpress.org
Thu Jun 23 18:48:39 UTC 2016
#37160: Pingbacks fail on multi-page posts
------------------------------+-----------------------------
Reporter: dllh | Owner:
Type: defect (bug) | Status: new
Priority: normal | Milestone: Awaiting Review
Component: Pings/Trackbacks | Version: trunk
Severity: normal | Keywords:
Focuses: |
------------------------------+-----------------------------
Repro:
1. Publish a post to pingback in a subsequent post and assure that the
site/post will allow pings.
2. Create a second post that has multiple pages with a reference to the
post created in step 1 in one of the later pages (sample content below).
3. Publish the second post.
Expected: The pingback will register.
Actual: The pingback doesn't register. If you repeat steps 2 and 3 but
move the link to the post created in 1 to the first page, the pingback
works. Here's some sample content to demonstrate the issue:
{{{
Page One
<!--nextpage-->
Page Two
<!--nextpage-->
Page Three with pingback: http://pleasetest.me/2016/06/23/page-to-ping/
}}}
This fails because the pingback code checks the pinging post to confirm
that the pung link exists in the content. Since the pung link displays on
a subsequent page, it's not displayed on the un-paginated permalink. Thus
when the pingback code fetches the pinging link, it doesn't find a link to
itself in the content and it discards the pingback. But this is a valid
use case and not an instance of spoofing (which I take it is what this
check is designed to prevent).
I'm not sure if there's some parameter we could append to the url when we
fetch to validate the link in context that might skip the pagination. If
so, that might be the simplest fix. I suppose another fix might be to look
for `verifying pingback` in the user agent (which is included in this
validation request's UA) and skip pagination if found. That feels kind of
brittle, though.
--
Ticket URL: <https://core.trac.wordpress.org/ticket/37160>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform
More information about the wp-trac
mailing list