Edit File by line
/home/zeestwma/redstone.../wp-admin
File: link-parse-opml.php
<?php
[0] Fix | Delete
/**
[1] Fix | Delete
* Parse OPML XML files and store in globals.
[2] Fix | Delete
*
[3] Fix | Delete
* @package WordPress
[4] Fix | Delete
* @subpackage Administration
[5] Fix | Delete
*/
[6] Fix | Delete
[7] Fix | Delete
if ( ! defined( 'ABSPATH' ) ) {
[8] Fix | Delete
die();
[9] Fix | Delete
}
[10] Fix | Delete
[11] Fix | Delete
/**
[12] Fix | Delete
* @global string $opml
[13] Fix | Delete
*/
[14] Fix | Delete
global $opml;
[15] Fix | Delete
[16] Fix | Delete
/**
[17] Fix | Delete
* Starts a new XML tag.
[18] Fix | Delete
*
[19] Fix | Delete
* Callback function for xml_set_element_handler().
[20] Fix | Delete
*
[21] Fix | Delete
* @since 0.71
[22] Fix | Delete
* @access private
[23] Fix | Delete
*
[24] Fix | Delete
* @global array $names
[25] Fix | Delete
* @global array $urls
[26] Fix | Delete
* @global array $targets
[27] Fix | Delete
* @global array $descriptions
[28] Fix | Delete
* @global array $feeds
[29] Fix | Delete
*
[30] Fix | Delete
* @param resource $parser XML Parser resource.
[31] Fix | Delete
* @param string $tag_name XML element name.
[32] Fix | Delete
* @param array $attrs XML element attributes.
[33] Fix | Delete
*/
[34] Fix | Delete
function startElement( $parser, $tag_name, $attrs ) { // phpcs:ignore WordPress.NamingConventions.ValidFunctionName.FunctionNameInvalid
[35] Fix | Delete
global $names, $urls, $targets, $descriptions, $feeds;
[36] Fix | Delete
[37] Fix | Delete
if ( 'OUTLINE' === $tag_name ) {
[38] Fix | Delete
$name = '';
[39] Fix | Delete
if ( isset( $attrs['TEXT'] ) ) {
[40] Fix | Delete
$name = $attrs['TEXT'];
[41] Fix | Delete
}
[42] Fix | Delete
if ( isset( $attrs['TITLE'] ) ) {
[43] Fix | Delete
$name = $attrs['TITLE'];
[44] Fix | Delete
}
[45] Fix | Delete
$url = '';
[46] Fix | Delete
if ( isset( $attrs['URL'] ) ) {
[47] Fix | Delete
$url = $attrs['URL'];
[48] Fix | Delete
}
[49] Fix | Delete
if ( isset( $attrs['HTMLURL'] ) ) {
[50] Fix | Delete
$url = $attrs['HTMLURL'];
[51] Fix | Delete
}
[52] Fix | Delete
[53] Fix | Delete
// Save the data away.
[54] Fix | Delete
$names[] = $name;
[55] Fix | Delete
$urls[] = $url;
[56] Fix | Delete
$targets[] = isset( $attrs['TARGET'] ) ? $attrs['TARGET'] : '';
[57] Fix | Delete
$feeds[] = isset( $attrs['XMLURL'] ) ? $attrs['XMLURL'] : '';
[58] Fix | Delete
$descriptions[] = isset( $attrs['DESCRIPTION'] ) ? $attrs['DESCRIPTION'] : '';
[59] Fix | Delete
} // End if outline.
[60] Fix | Delete
}
[61] Fix | Delete
[62] Fix | Delete
/**
[63] Fix | Delete
* Ends a new XML tag.
[64] Fix | Delete
*
[65] Fix | Delete
* Callback function for xml_set_element_handler().
[66] Fix | Delete
*
[67] Fix | Delete
* @since 0.71
[68] Fix | Delete
* @access private
[69] Fix | Delete
*
[70] Fix | Delete
* @param resource $parser XML Parser resource.
[71] Fix | Delete
* @param string $tag_name XML tag name.
[72] Fix | Delete
*/
[73] Fix | Delete
function endElement( $parser, $tag_name ) { // phpcs:ignore WordPress.NamingConventions.ValidFunctionName.FunctionNameInvalid
[74] Fix | Delete
// Nothing to do.
[75] Fix | Delete
}
[76] Fix | Delete
[77] Fix | Delete
// Create an XML parser.
[78] Fix | Delete
if ( ! function_exists( 'xml_parser_create' ) ) {
[79] Fix | Delete
wp_trigger_error( '', __( "PHP's XML extension is not available. Please contact your hosting provider to enable PHP's XML extension." ) );
[80] Fix | Delete
wp_die( __( "PHP's XML extension is not available. Please contact your hosting provider to enable PHP's XML extension." ) );
[81] Fix | Delete
}
[82] Fix | Delete
[83] Fix | Delete
$xml_parser = xml_parser_create();
[84] Fix | Delete
[85] Fix | Delete
// Set the functions to handle opening and closing tags.
[86] Fix | Delete
xml_set_element_handler( $xml_parser, 'startElement', 'endElement' );
[87] Fix | Delete
[88] Fix | Delete
if ( ! xml_parse( $xml_parser, $opml, true ) ) {
[89] Fix | Delete
printf(
[90] Fix | Delete
/* translators: 1: Error message, 2: Line number. */
[91] Fix | Delete
__( 'XML Error: %1$s at line %2$s' ),
[92] Fix | Delete
xml_error_string( xml_get_error_code( $xml_parser ) ),
[93] Fix | Delete
xml_get_current_line_number( $xml_parser )
[94] Fix | Delete
);
[95] Fix | Delete
}
[96] Fix | Delete
[97] Fix | Delete
if ( PHP_VERSION_ID < 80000 ) { // xml_parser_free() has no effect as of PHP 8.0.
[98] Fix | Delete
// Free up memory used by the XML parser.
[99] Fix | Delete
xml_parser_free( $xml_parser );
[100] Fix | Delete
}
[101] Fix | Delete
[102] Fix | Delete
unset( $xml_parser );
[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