/home/techb158/public_html/wp-content/plugins/wordpress-seo/src/helpers
NameSizeModeActions
open-graph/-0755rm
schema/-0755rm
twitter/-0755rm
aioseo-helper.php12660644editdlrm
asset-helper.php25720644editdlrm
attachment-cleanup-helper.php22940644editdlrm
author-archive-helper.php53750644editdlrm
blocks-helper.php23780644editdlrm
capability-helper.php21160644editdlrm
crawl-cleanup-helper.php82940644editdlrm
curl-helper.php6550644editdlrm
current-page-helper.php165120644editdlrm
date-helper.php32080644editdlrm
environment-helper.php7930644editdlrm
first-time-configuration-notice-helper.php54860644editdlrm
home-url-helper.php6810644editdlrm
image-helper.php119720644editdlrm
import-cursor-helper.php13920644editdlrm
import-helper.php7160644editdlrm
indexable-helper.php94590644editdlrm
indexable-to-postmeta-helper.php96300644editdlrm
indexing-helper.php129920644editdlrm
language-helper.php27160644editdlrm
lock-helper.php29080644editdlrm
meta-helper.php29820644editdlrm
notification-helper.php20570644editdlrm
options-helper.php47580644editdlrm
pagination-helper.php58150644editdlrm
permalink-helper.php16410644editdlrm
post-helper.php55530644editdlrm
post-type-helper.php73500644editdlrm
primary-term-helper.php13980644editdlrm
product-helper.php11030644editdlrm
redirect-helper.php17680644editdlrm
require-file-helper.php3260644editdlrm
robots-helper.php17770644editdlrm
robots-txt-helper.php34780644editdlrm
route-helper.php6940644editdlrm
sanitization-helper.php10560644editdlrm
score-icon-helper.php28460644editdlrm
short-link-helper.php36070644editdlrm
site-helper.php5660644editdlrm
social-profiles-helper.php109910644editdlrm
string-helper.php12180644editdlrm
taxonomy-helper.php51000644editdlrm
url-helper.php83240644editdlrm
user-helper.php40260644editdlrm
wincher-helper.php25690644editdlrm
woocommerce-helper.php13020644editdlrm
wordpress-helper.php5120644editdlrm
wpdb-helper.php9370644editdlrm
Edit: /home/techb158/public_html/wp-content/plugins/wordpress-seo/src/helpers/url-helper.php (8324B)
get_url_path( $url ); if ( $path === '' ) { return ''; } $parts = \explode( '.', $path ); if ( empty( $parts ) || \count( $parts ) === 1 ) { return ''; } return \end( $parts ); } /** * Ensures that the given url is an absolute url. * * @param string $url The url that needs to be absolute. * * @return string The absolute url. */ public function ensure_absolute_url( $url ) { if ( ! \is_string( $url ) || $url === '' ) { return $url; } if ( $this->is_relative( $url ) === true ) { return $this->build_absolute_url( $url ); } return $url; } /** * Parse the home URL setting to find the base URL for relative URLs. * * @param string|null $path Optional path string. * * @return string */ public function build_absolute_url( $path = null ) { $path = \wp_parse_url( $path, \PHP_URL_PATH ); $url_parts = \wp_parse_url( \home_url() ); $base_url = \trailingslashit( $url_parts['scheme'] . '://' . $url_parts['host'] ); if ( \is_string( $path ) ) { $base_url .= \ltrim( $path, '/' ); } return $base_url; } /** * Returns the link type. * * @param array $url The URL, as parsed by wp_parse_url. * @param array|null $home_url Optional. The home URL, as parsed by wp_parse_url. Used to avoid reparsing the home_url. * @param bool $is_image Whether or not the link is an image. * * @return string The link type. */ public function get_link_type( $url, $home_url = null, $is_image = false ) { // If there is no scheme and no host the link is always internal. // Beware, checking just the scheme isn't enough as a link can be //yoast.com for instance. if ( empty( $url['scheme'] ) && empty( $url['host'] ) ) { return ( $is_image ) ? SEO_Links::TYPE_INTERNAL_IMAGE : SEO_Links::TYPE_INTERNAL; } // If there is a scheme but it's not http(s) then the link is always external. if ( \array_key_exists( 'scheme', $url ) && ! \in_array( $url['scheme'], [ 'http', 'https' ], true ) ) { return ( $is_image ) ? SEO_Links::TYPE_EXTERNAL_IMAGE : SEO_Links::TYPE_EXTERNAL; } $home_url ??= \wp_parse_url( \home_url() ); // When the base host is equal to the host. if ( isset( $url['host'] ) && $url['host'] !== $home_url['host'] ) { return ( $is_image ) ? SEO_Links::TYPE_EXTERNAL_IMAGE : SEO_Links::TYPE_EXTERNAL; } // There is no base path and thus all URLs of the same domain are internal. if ( empty( $home_url['path'] ) ) { return ( $is_image ) ? SEO_Links::TYPE_INTERNAL_IMAGE : SEO_Links::TYPE_INTERNAL; } // When there is a path and it matches the start of the url. if ( isset( $url['path'] ) && \strpos( $url['path'], $home_url['path'] ) === 0 ) { return ( $is_image ) ? SEO_Links::TYPE_INTERNAL_IMAGE : SEO_Links::TYPE_INTERNAL; } return ( $is_image ) ? SEO_Links::TYPE_EXTERNAL_IMAGE : SEO_Links::TYPE_EXTERNAL; } /** * Recreate current URL. * * @param bool $with_request_uri Whether we want the REQUEST_URI appended. * * @return string */ public function recreate_current_url( $with_request_uri = true ) { $current_url = 'http'; if ( isset( $_SERVER['HTTPS'] ) && $_SERVER['HTTPS'] === 'on' ) { $current_url .= 's'; } $current_url .= '://'; // phpcs:ignore WordPress.Security.ValidatedSanitizedInput -- We know this is scary. $suffix = ( $with_request_uri && isset( $_SERVER['REQUEST_URI'] ) ) ? $_SERVER['REQUEST_URI'] : ''; if ( isset( $_SERVER['SERVER_NAME'] ) && ! empty( $_SERVER['SERVER_NAME'] ) ) { // phpcs:ignore WordPress.Security.ValidatedSanitizedInput -- We know this is scary. $server_name = $_SERVER['SERVER_NAME']; } else { // Early return with just the path. return $suffix; } $server_port = ''; if ( isset( $_SERVER['SERVER_PORT'] ) && $_SERVER['SERVER_PORT'] !== '80' && $_SERVER['SERVER_PORT'] !== '443' ) { // phpcs:ignore WordPress.Security.ValidatedSanitizedInput -- We know this is scary. $server_port = $_SERVER['SERVER_PORT']; } if ( ! empty( $server_port ) ) { $current_url .= $server_name . ':' . $server_port . $suffix; } else { // phpcs:ignore WordPress.Security.ValidatedSanitizedInput -- We know this is scary. $current_url .= $server_name . $suffix; } return $current_url; } /** * Parses a URL and returns its components, this wrapper function was created to support unit tests. * * @param string $parsed_url The URL to parse. * @return array The parsed components of the URL. */ public function parse_str_params( $parsed_url ) { $array = []; // @todo parse_str changes spaces in param names into `_`, we should find a better way to support them. \wp_parse_str( $parsed_url, $array ); return $array; } }