Переменная PHP не работает внутри условного оператора внутри function.php (Wordpress)? - PullRequest
0 голосов
/ 23 декабря 2010

В основном, если есть загруженное изображение для заголовка сайта (логотип), оно будет отображаться в качестве фона #header h1 a (эта часть отлично работает) и установить для его текста значение indent -9999px ;(это не работает).

Я сделал $text_indent = '-9999px 'внутри оператора if, который говорит: "//If it is an image"

Почему $text_indent не отображается в конечном вводе?

header.php

#header h1 a {
        background: url(<?php echo $options['logo']; ?>) no-repeat scroll 0 0;
        text-indent: <?php echo $text_indent; ?>
    }

function.php:

// Logo
function logo_setting() {
   echo '<input type="file" name="logo" />';
}

function validate_setting($plugin_options) {
   $keys = array_keys($_FILES);
   $i = 0;

   foreach ($_FILES as $image) {

      // if a files was upload
      if ($image['size']) {
         // if it is an image
         if (preg_match('/(jpg|jpeg|png|gif)$/', $image['type'])) {
            $override = array('test_form' => false);
            $file = wp_handle_upload($image, $override);

            $plugin_options[$keys[$i]] = $file['url'];

            // Hide site title's text
            $text_indent = '-9999px';

         } else {
            $options = get_option('plugin_options');
            $plugin_options[$keys[$i]] = $options[$logo];
            wp_die('No image was uploaded.');
         }
      }

      // else, retain the image that's already on file.
      else {
         $options = get_option('plugin_options');
         $plugin_options[$keys[$i]] = $options[$keys[$i]];
      }
      $i++;
   }

   return $plugin_options;
}

function section_cb() {}

// Add stylesheet

1 Ответ

1 голос
/ 23 декабря 2010

Вы используете эту переменную внутри function в function.php. Но эта переменная не будет доступна вне функции.

Таким образом, вы должны объявить его как global переменную.

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