サポート » 使い方全般 » functions.php のline94を削除はよかったのか?

  • 既にあるテーマを新しく設置したワードプレスにアップして、
    以下のような警告が出て、管理画面が正常に動きません。

    Warning: extract() expects parameter 1 to be array, string given in /home/users/0/lolipop.jp-kurobon2019/web/wp-content/themes/sample/functions.php on line 94
    そこで
    functions.phpの以下の部分を削除しました。そうしたら正常になりました。
    しかし本当に削除して良かったのか不安です。どなたか教えてください。

    function mts_check_login() {
    global $current_user;

    get_currentuserinfo();
    extract($current_user->wp_capabilities);
    if ($subscriber) {
    wp_redirect(get_bloginfo(‘url’));
    }
    }

    add_action(‘admin_init’, ‘mts_check_login’);

    移動したバージョン3.8
    移動する前 3.5.1

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • モデレーター jim912

    (@jim912)

    「既にあるテーマ」が何で、どのように利用しているかは分かりませんが、元ネタは下記のようです。

    WordPress ログインフォームをページ上に表示してログインするには

    該当箇所を削除した場合、フックごと消しているので、エラーなどの発生にはならないと思われますが、ログインしたユーザーが購読者で合った場合に、なんらかテーマ本来の機能が利用できない、もしくは意図しない遷移となる可能姓があります。

    トピック投稿者 bigsum

    (@goodwell)

    jim912様
    なるほどそういうことですか。ありがとうございます。
     でも何で記述されてエラーになったのでしょうか。
    バージョンが関係してくるのでしょうか?
    ログインは設けないので、当座はなくてもいいのですが。

    モデレーター Takuro Hishikawa

    (@hissy)

    extract($current_user->wp_capabilities);

    if (isset($current_user->caps) && is_array($current_user->caps)) {
        extract($current_user->caps);
    }

    に修正したら動きまっせ

    トピック投稿者 bigsum

    (@goodwell)

    hissyさん

    ありがとうございます。
    やってみます。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • トピック「functions.php のline94を削除はよかったのか?」には新たに返信することはできません。