■ユーザーズフォーラム リニューアルのお知らせ
新規投稿は新ユーザーズフォーラムにお願いします。

[新着ニュース] 記事一覧 のソート機能について

manhoo > [新着ニュース] 記事一覧 のソート機能について @ 2017/4/8 21:11
[新着ニュース] 記事一覧と[お客様の声] 記事一覧と[イベント情報] 記事一覧
添付画像の赤い枠のソート(降順、昇順)を押すと、下記エラーが出ます。
よろしくお願いいたします。

Notice (8): Undefined offset: 0 [CORE/Baser/Plugin/Blog/Model/BlogPost.php, line 714]


エラーコード追加 2017.4.9
Code Context
        // ================================================================
        $idRequire = false;
        if(!empty($options['order']) && $options['order'][0] !== false) {
$options = array(
	'conditions' => array(
		'BlogPost.blog_content_id' => '1'
	),
	'fields' => null,
	'joins' => array(),
	'limit' => (int) 10,
	'offset' => null,
	'order' => array(
		'BlogPost.no' => 'desc'
	),
	'page' => (int) 1,
	'group' => null,
	'callbacks' => true,
	'maxLimit' => (int) 100,
	'paramType' => 'named',
	'sort' => 'no',
	'direction' => 'desc'
)
$idRequire = false


■ baserCMS 4.0.3
■ レンタルサーバー名:さくらサーバー
■ 利用しているデータベース: [ MySQL ]
■ テーマ Simple Company (bg03)

■ BaserCMSのバージョン:4.1.6
■ サーバー名:さくらレンタルサーバー
■ テーマ:Simple Company 03
■ 設置フォルダ:ROOT
■ データベース:MySQL
■ PHPスキル(自己評価):C

akillerbee > Re: [新着ニュース] 記事一覧 のソート機能について @ 2017/4/10 11:24
こんにちはakillerbeeです。

デバッグモードを解除すれば表示されなくなるものかとは思いますが
下記のようにコアに手を加えれば対応は可能かと思います。

lib/Baser/Plugin/Blog/Model/BlogPost.php #714行目あたり
if(!empty($options['order']) && $options['order'][0] !== false) {
			$idRequire = true;
			if(is_array($options['order'])) {
				foreach($options['order'] as $key => $value) {
					if(strpos($value, ',') !== false) {
						$orders = explode(',', $value);
						foreach($orders as $order) {
							if(strpos($order, 'BlogPost.id') !== false) {
								$idRequire = false;
							}
						}
					} else {
						if(strpos($key, 'BlogPost.id') !== false) {
							$idRequire = false;
						}
					}
				}
			} else {
				if(strpos('BlogPost.id', $options['sort']) === false) {
					$idRequire = false;
				}
			}
		}




if(!empty($options['order']) && isset($options['order'][0])) {
			if ($options['order'][0] !== false) {
				$idRequire = true;
				if(is_array($options['order'])) {
					foreach($options['order'] as $key => $value) {
						if(strpos($value, ',') !== false) {
							$orders = explode(',', $value);
							foreach($orders as $order) {
								if(strpos($order, 'BlogPost.id') !== false) {
									$idRequire = false;
								}
							}
						} else {
							if(strpos($key, 'BlogPost.id') !== false) {
								$idRequire = false;
							}
						}
					}
				} else {
					if(strpos('BlogPost.id', $options['sort']) === false) {
						$idRequire = false;
					}
				}
			}
		}
manhoo > Re: [新着ニュース] 記事一覧 のソート機能について @ 2017/4/10 12:00
akillerbeeさん

ありがとうございます、できました。
スッキリでした。

■ BaserCMSのバージョン:4.1.6
■ サーバー名:さくらレンタルサーバー
■ テーマ:Simple Company 03
■ 設置フォルダ:ROOT
■ データベース:MySQL
■ PHPスキル(自己評価):C

ログイン
ユーザー名:
パスワード:


  新規登録 / パスワード紛失

検索

facebook
フォーラムで悩みが解決した場合など、よかったら「いいね!」をポチっとクリックしてください!質問の回答者や開発者の励みになります

フォーラムガイド


関連リンク

オンライン状況
33 人のユーザが現在オンラインです。 (32 人のユーザが フォーラム を参照しています。)

登録ユーザ: 0
ゲスト: 33