Błąd PHP przy wprowadzeniu <script src...

0

Witam wszystkich,

Sklep online - wordpress - woocommerce - tampletka Bridge

Mam mały problem z scriptem , tzn. chce wrzucić** <script src.... **o "Polityce Prywatności" w stopce do podstrony do kolumny 3.

Script jest wrzucony w nową podstrone "Polityka prywatności" do edytora tekstowego html - co wynika z intrukcji umieszczania tego scryptu

Pozniej podstrona jest wrzucona do menu stopki z tym scriptem ( cale te menu jest w stopce widget kolumna 3), tam juz sa dwie podstrony i jeden anchor (kotwica)"technologia",guzik i icona z tekstem . Anchor przekierowuje do pierwszej strony pod temat i widnjeje jak podstrona.

Wszystko ladnie smiga, ale gdy wrzuce ta podstrone"Polityka prywatnosci" do menu to

wyskakuje błąd:

"parameter 1 to be string, array given in wp-admin/wp-includes/formatting.php on line 3774"

w kodzie wyglada on tak:
to jest frgament 3774

if ( 0 !== stripos( $url, 'mailto:' ) ) {
$strip = array('%0d', '%0a', '%0D', '%0A');
$url = _deep_replace($strip, $url);

Anchor zanika z footera ( stopki) a w podstronie"polityce prywatnosci" nie ma contenta czyli tego scriptu, ktory generuje content z innej strony

Tuatj jest reszta kodu:

/**

  • Checks and cleans a URL.

  • A number of characters are removed from the URL. If the URL is for displaying

  • (the default behaviour) ampersands are also replaced. The {@see 'clean_url'} filter

  • is applied to the returned cleaned URL.

  • @since 2.8.0

  • @param string $url The URL to be cleaned.

  • @param array $protocols Optional. An array of acceptable protocols.

  •                      Defaults to return value of wp_allowed_protocols()
    
  • @param string $_context Private. Use esc_url_raw() for database usage.

  • @return string The cleaned $url after the {@see 'clean_url'} filter is applied.
    */
    function esc_url( $url, $protocols = null, $_context = 'display' ) {
    $original_url = $url;

    if ( '' == $url )
    return $url;

    $url = str_replace( ' ', '%20', $url );
    $url = preg_replace('|[^a-z0-9-~+_.?#=!&;,/:%@$|*'()[]\x80-\xff]|i', '', $url);

    if ( '' === $url ) {
    return $url;
    }

    if ( 0 !== stripos( $url, 'mailto:' ) ) {                                             **-  KOD NR - 3774**
     $strip = array('%0d', '%0a', '%0D', '%0A');                       
     $url = _deep_replace($strip, $url);**
    

    }

    $url = str_replace(';//', '://', $url);
    /* If the URL doesn't appear to contain a scheme, we

    • presume it needs http:// prepended (unless a relative
    • link starting with /, # or ? or a php file).
      */
      if ( strpos($url, ':') === false && ! in_array( $url[0], array( '/', '#', '?' ) ) &&
      ! preg_match('/^[a-z0-9-]+?.php/i', $url) )
      $url = 'http://' . $url;

    // Replace ampersands and single quotes only when displaying.
    if ( 'display' == $_context ) {
    $url = wp_kses_normalize_entities( $url );
    $url = str_replace( '&', '&', $url );
    $url = str_replace( "'", ''', $url );
    }

    if ( ( false !== strpos( $url, '[' ) ) || ( false !== strpos( $url, ']' ) ) ) {

     $parsed = wp_parse_url( $url );
     $front  = '';
    
     if ( isset( $parsed['scheme'] ) ) {
     	$front .= $parsed['scheme'] . '://';
     } elseif ( '/' === $url[0] ) {
     	$front .= '//';
     }
    
     if ( isset( $parsed['user'] ) ) {
     	$front .= $parsed['user'];
     }
    
     if ( isset( $parsed['pass'] ) ) {
     	$front .= ':' . $parsed['pass'];
     }
    
     if ( isset( $parsed['user'] ) || isset( $parsed['pass'] ) ) {
     	$front .= '@';
     }
    
     if ( isset( $parsed['host'] ) ) {
     	$front .= $parsed['host'];
     }
    
     if ( isset( $parsed['port'] ) ) {
     	$front .= ':' . $parsed['port'];
     }
    
     $end_dirty = str_replace( $front, '', $url );
     $end_clean = str_replace( array( '[', ']' ), array( '%5B', '%5D' ), $end_dirty );
     $url       = str_replace( $end_dirty, $end_clean, $url );
    

    }

    if ( '/' === $url[0] ) {
    $good_protocol_url = $url;
    } else {
    if ( ! is_array( $protocols ) )
    $protocols = wp_allowed_protocols();
    $good_protocol_url = wp_kses_bad_protocol( $url, $protocols );
    if ( strtolower( $good_protocol_url ) != strtolower( $url ) )
    return '';
    }

    /**

    • Filters a string cleaned and escaped for output as a URL.
    • @since 2.3.0
    • @param string $good_protocol_url The cleaned URL to be returned.
    • @param string $original_url The URL prior to cleaning.
    • @param string $_context If 'display', replace ampersands and single quotes only.
      */
      return apply_filters( 'clean_url', $good_protocol_url, $original_url, $_context );
      }

Z góry wielkie dzieki

0

Zaktualizuj WordPress.

1 użytkowników online, w tym zalogowanych: 0, gości: 1