Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93
/home/sportsfe.../httpdocs/clone/wp-conte.../plugins/wordpres.../src/routes
File: indexables-head-route.php
<?php
[0] Fix | Delete
[1] Fix | Delete
namespace Yoast\WP\SEO\Routes;
[2] Fix | Delete
[3] Fix | Delete
use WP_REST_Request;
[4] Fix | Delete
use WP_REST_Response;
[5] Fix | Delete
use WPSEO_Utils;
[6] Fix | Delete
use Yoast\WP\SEO\Actions\Indexables\Indexable_Head_Action;
[7] Fix | Delete
use Yoast\WP\SEO\Conditionals\Headless_Rest_Endpoints_Enabled_Conditional;
[8] Fix | Delete
use Yoast\WP\SEO\Main;
[9] Fix | Delete
[10] Fix | Delete
/**
[11] Fix | Delete
* Head route for indexables.
[12] Fix | Delete
*/
[13] Fix | Delete
class Indexables_Head_Route implements Route_Interface {
[14] Fix | Delete
[15] Fix | Delete
/**
[16] Fix | Delete
* The posts route constant.
[17] Fix | Delete
*
[18] Fix | Delete
* @var string
[19] Fix | Delete
*/
[20] Fix | Delete
public const HEAD_FOR_URL_ROUTE = 'get_head';
[21] Fix | Delete
[22] Fix | Delete
/**
[23] Fix | Delete
* The full posts route constant.
[24] Fix | Delete
*
[25] Fix | Delete
* @var string
[26] Fix | Delete
*/
[27] Fix | Delete
public const FULL_HEAD_FOR_URL_ROUTE = Main::API_V1_NAMESPACE . '/' . self::HEAD_FOR_URL_ROUTE;
[28] Fix | Delete
[29] Fix | Delete
/**
[30] Fix | Delete
* The head action.
[31] Fix | Delete
*
[32] Fix | Delete
* @var Indexable_Head_Action
[33] Fix | Delete
*/
[34] Fix | Delete
private $head_action;
[35] Fix | Delete
[36] Fix | Delete
/**
[37] Fix | Delete
* Indexable_Indexation_Route constructor.
[38] Fix | Delete
*
[39] Fix | Delete
* @param Indexable_Head_Action $head_action The head action.
[40] Fix | Delete
*/
[41] Fix | Delete
public function __construct( Indexable_Head_Action $head_action ) {
[42] Fix | Delete
$this->head_action = $head_action;
[43] Fix | Delete
}
[44] Fix | Delete
[45] Fix | Delete
/**
[46] Fix | Delete
* Returns the conditionals based in which this loadable should be active.
[47] Fix | Delete
*
[48] Fix | Delete
* @return array<string>
[49] Fix | Delete
*/
[50] Fix | Delete
public static function get_conditionals() {
[51] Fix | Delete
return [ Headless_Rest_Endpoints_Enabled_Conditional::class ];
[52] Fix | Delete
}
[53] Fix | Delete
[54] Fix | Delete
/**
[55] Fix | Delete
* Registers routes with WordPress.
[56] Fix | Delete
*
[57] Fix | Delete
* @return void
[58] Fix | Delete
*/
[59] Fix | Delete
public function register_routes() {
[60] Fix | Delete
$route_args = [
[61] Fix | Delete
'methods' => 'GET',
[62] Fix | Delete
'callback' => [ $this, 'get_head' ],
[63] Fix | Delete
'permission_callback' => '__return_true',
[64] Fix | Delete
'args' => [
[65] Fix | Delete
'url' => [
[66] Fix | Delete
'validate_callback' => [ $this, 'is_valid_url' ],
[67] Fix | Delete
'required' => true,
[68] Fix | Delete
],
[69] Fix | Delete
],
[70] Fix | Delete
];
[71] Fix | Delete
\register_rest_route( Main::API_V1_NAMESPACE, self::HEAD_FOR_URL_ROUTE, $route_args );
[72] Fix | Delete
}
[73] Fix | Delete
[74] Fix | Delete
/**
[75] Fix | Delete
* Gets the head of a page for a given URL.
[76] Fix | Delete
*
[77] Fix | Delete
* @param WP_REST_Request $request The request. This request should have a url param set.
[78] Fix | Delete
*
[79] Fix | Delete
* @return WP_REST_Response The response.
[80] Fix | Delete
*/
[81] Fix | Delete
public function get_head( WP_REST_Request $request ) {
[82] Fix | Delete
$url = \esc_url_raw( \utf8_uri_encode( $request['url'] ) );
[83] Fix | Delete
$data = $this->head_action->for_url( $url );
[84] Fix | Delete
[85] Fix | Delete
return new WP_REST_Response( $data, $data->status );
[86] Fix | Delete
}
[87] Fix | Delete
[88] Fix | Delete
/**
[89] Fix | Delete
* Checks if a url is a valid url.
[90] Fix | Delete
*
[91] Fix | Delete
* @param string $url The url to check.
[92] Fix | Delete
*
[93] Fix | Delete
* @return bool Whether or not the url is valid.
[94] Fix | Delete
*/
[95] Fix | Delete
public function is_valid_url( $url ) {
[96] Fix | Delete
$url = WPSEO_Utils::sanitize_url( \utf8_uri_encode( $url ) );
[97] Fix | Delete
if ( \filter_var( $url, \FILTER_VALIDATE_URL ) === false ) {
[98] Fix | Delete
return false;
[99] Fix | Delete
}
[100] Fix | Delete
return true;
[101] Fix | Delete
}
[102] Fix | Delete
}
[103] Fix | Delete
[104] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function