質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.51%

  • PHP

    23955questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • WordPress

    8906questions

    WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

自作ウィジェットについて wordpress

受付中

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 794

chNOBUNAGA

score 31

以下のコードを、function.phpに記載をしましたが、エラーが出ているようです。
自作ウィジェットは、初めてなのでわかりません。

<?php

class option1 extends WP_Widget {
 function __construct() {
            parent::__construct(
                'option1', // ウィジェットのベースID
                'option1', // ウィジェットの名前
                array( 'description' => 'Display Specific HTML File' ) // ウィジェットの説明
            );
        }

 /* 管理画面の設定とか表示用コードを書く */
 function form($instance) {

 }

 /* 管理画面で設定を変更した時の処理を書く */
 function update($new_instance, $old_instance) {

 }

 /* ウィジェットを配置した時の表示用コードを書く */
 function widget($args, $instance) {
 ?>

<style type="text/css">
<!--


.button {
    position: relative;
    background-color: #87CEFA;
    border-radius: 4px;
    color: #fff;
        line-width: 104px;
    line-height: 104px;
    -webkit-transition: none;
    transition: none;
    box-shadow: 0 3px 0 #0e8c73;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
}

.button:active {
    top: 3px;
    box-shadow: none;
}



.block {
    padding: 50px;
    background: #fff;
    border: 1px #ccc solid;
    box-shadow: 0 2px 3px 0 #ddd;
    -moz-box-shadow: 0 2px 3px 0 #ddd;
    -webkit-box-shadow: 0 2px 3px 0 #ddd;
}

.block2 {
    padding: 50px;
    background: #00FA9A;
    border: 1px #ccc solid;
    box-shadow: 0 2px 3px 0 #ddd;
    -moz-box-shadow: 0 2px 3px 0 #ddd;
    -webkit-box-shadow: 0 2px 3px 0 #ddd;
}




.side-corner-tag {
    position: relative;
    color: #ffffff;

    padding: 5px;
    overflow: hidden;
    font-family: Arial, sans-serif;
    font-weight: 900;
}

.side-corner-tag p {
    display: inline;   
}

.side-corner-tag p span {
    position: absolute;
    display: inline-block;
    right: -25px;
    box-shadow: 0px 0px 10px rgba(0,0,0,0.2), inset 0px 5px 30px rgba(255,255,255,0.2);
    text-align: center;
    text-transform: uppercase;
    top: 22px;
    background: #d93131;
    width: 100px;
    padding: 3px 10px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
}


.side-corner-tag p:before {
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    top: -17px;
    right: 69px;
    z-index: +1;
    border: 17px solid;
    border-color: transparent transparent #662121 transparent;
}

.side-corner-tag p:after {
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    top: 74px;
    z-index: +1;
    right: -10px;
    border: 17px solid;
    border-color: #662121 transparent transparent transparent;
}
-->
</style>

<?php
        extract(shortcode_atts(array(
                "ex" => '',
                "type" => 'project'
        ), $atts));
        global $post;
        $myposts = get_posts('numberposts=-1&order=ASC&post_type='.$type.'&exclude='.$ex);
        $retour='<form method="get" action="'.home_url('/').'">
      <input type="text" name="s" value="'.the_search_query().'" placeholder="検索" />
      <input type="hidden" name="post_type" value="project">
      <input type="submit" value="検索" />
    </form><ul>';
        foreach($myposts as $post) :
            if(!is_subpage()) {
             setup_postdata($post);
            if(has_tag('あまり')){

             $retour.='<div class="side-corner-tag"><a href="'.get_permalink().'">'.get_the_post_thumbnail( $page->ID, 'thumbnail' ).the_title("","",false).get_the_content("学び " . get_the_title()).'</a><p><span>新作</span></p></div> ';

}

else{
             $retour.='<div class="block"><a href="'.get_permalink().'">'.get_the_post_thumbnail( $page->ID, 'thumbnail' ).the_title("","",false).get_the_content("Continue reading " . get_the_title()).'</a></div> ';
                         }

}
        endforeach;wp_reset_postdata();

        return $retour; 

 }
 }

/* 自作ウィジェットを使えるようにする処理 */
register_widget('option1');
?>

すいませんが、ご教授お願いします。

エラー内容

Notice: bbp_setup_current_user was called incorrectly. The current user is being initialized without using $wp->init(). Please see Debugging in WordPress for more information. (This message was added in version 2.3.) in /home/users/1//web/wordpress/wp-includes/functions.php on line 3897

Notice: bp_setup_current_user was called incorrectly. 現在のユーザーは $wp->init() を使用せずに初期化されています。 Please see Debugging in WordPress for more information. (This message was added in version 1.7.) in /home/users/1//web/wordpress/wp-includes/functions.php on line 3897

Parse error: syntax error, unexpected ' function' (T_STRING), expecting function (T_FUNCTION) in /home/users/1//web/wordpress/wp-content/themes/athena/functions.php on line 159

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • kuck1u

    2016/07/10 13:26

    エラー内容を記述してください。

    キャンセル

  • kei344

    2016/07/10 13:26

    どこでどのようなエラーがでるのか、エラーの全文を質問文に追記ください。

    キャンセル

  • chNOBUNAGA

    2016/07/10 13:31

    エラー表示をwp-configに設定しても、エラーが一瞬しか出ないためわかりません

    キャンセル

  • 退会済みユーザー

    2016/07/10 13:53

    こちらの質問が他のユーザから「やってほしいことだけを記載した丸投げの質問」という指摘を受けました
    「質問を編集する」ボタンから編集を行い、調査したこと・試したことを記入していただくと、回答が得られやすくなります。

回答 1

0

「 bbp_setup_current_user は不正に呼ばれています。現在のユーザーは $wp_init() を使用せずに初期化されています」
「function.php 159 行目でシンタックスエラー」

そのままだと思いますが、何がわからないのですか?

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/07/11 21:53

    なぜエラーがでているかわからないです。
    できれば、訂正を教えていただきたいです。

    キャンセル

  • 2016/07/11 22:11

    bbp_setup_current_user の件は、ワードプレスのバグの可能性があるそうです。最新版にアップデートしてみてください。

    もう一つは、function.php の 159 行目より前のカッコがちゃんと対応しているかどうか確認してみてください。

    キャンセル

同じタグがついた質問を見る

  • PHP

    23955questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • WordPress

    8906questions

    WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。