WordPress 2.8.6 foobars мои варианты темы с escape-косыми чертами - PullRequest
0 голосов
/ 17 ноября 2009

Я только что обновил блог до WordPress 2.8.6 и обнаружил, что они выходят из кавычек иначе, чем 2.8.5

У меня есть панель параметров темы, которая позволяет пользователю вводить свои теги img в текстовую область.

Однако, когда параметры сохранены, WP добавляет escape-символы к двойным кавычкам, которые он находит в текстовой области.

Пример:

<img src="somefile.jpg" />

становится

<img src=\"somefile.jpg\" />

И это приводит к тому, что изображение не загружается

Кроме того, при каждом сохранении опций моей темы число обратных косых черт увеличивается вдвое !!!

function mytheme_add_admin() {

global $themename, $shortname, $options;

if ( $_GET['page'] == basename(__FILE__) ) {

if ( 'save' == $_REQUEST['action'] ) {

  foreach ($options as $value) {
    update_option( $value['id'], $_REQUEST[ $value['id'] ] ); 
  }

  foreach ($options as $value) {
    if( isset( $_REQUEST[ $value['id'] ] ) ) { 
      update_option( $value['id'], $_REQUEST[ $value['id'] ]  ); 
    } else { 
      delete_option( $value['id'] ); 
    } 
  }

  header("Location: themes.php?page=functions.php&saved=true");
  die;

} else if( 'reset' == $_REQUEST['action'] ) {

  foreach ($options as $value) {
     delete_option( $value['id'] ); 
  }

 header("Location: themes.php?page=functions.php&reset=true");
 die;

}

1 Ответ

5 голосов
/ 20 ноября 2009

WordPress всегда выполняет magic_quotes_gpc по причинам обратного сжатия. При работе с данными GPC необходимо выполнить stripslashes() для данных, чтобы получить их в необработанном виде.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...