【1.0.22J-beta1】Dittoのextendersがうまく機能していない【解決済み】

質問全般・改善要望
ifactory
メンバー
メンバー
記事: 33
登録日時: 2013年10月16日(水) 16:49

【1.0.22J-beta1】Dittoのextendersがうまく機能していない【解決済み】

投稿記事by ifactory » 2019年3月28日(木) 18:58

お世話になります。
1.0.22J-beta1で、Dittoのextendersが、うまく動かなくなってしまいました。
(1.0.21Jまでは、正常に動いています。)

具体的には下記そのものではありませんが、このようなフィルターが動いていません。

&extenders=`exampleFilter`

Dittoのextendersフォルダ内のサンプル

コード: 全て選択

<?php
$filters['custom']['exampleFilter'] = array('pagetitle', 'exampleFilter');

if (!function_exists('exampleFilter')) {
   function exampleFilter($resource) {
      if (strtolower($resource['pagetitle'])=== "AAAA") {
         return 1;
      }

        return 0;
    }
}
?>


結果は、フィルターがかからず、parents以下が全部表示されてしまいます。

どうぞよろしくお願いいたします。
最後に編集したユーザー ifactory on 2019年4月01日(月) 01:12 [ 編集 1 回目 ]
アバター
yama
管理人
記事: 3073
登録日時: 2009年7月29日(水) 02:50

【1.0.22J-beta1】Dittoのextendersがうまく機能していない

投稿記事by yama » 2019年3月29日(金) 12:19

報告ありがとうございます、後ほど修正します。
アバター
yama
管理人
記事: 3073
登録日時: 2009年7月29日(水) 02:50

【1.0.22J-beta1】Dittoのextendersがうまく機能していない

投稿記事by yama » 2019年3月30日(土) 08:25

分かりました。

コード: 全て選択

$filters = array('custom'=>array(),'parsed'=>array());

snippet.ditto.phpに上記のような記述がありますが、エクステンダーでセットした$filtersをここで
上書きしてしまっています。

コード: 全て選択

if(!$filters) {
    $filters = array('custom'=>array(),'parsed'=>array());
}

上記のように書くと動作すると思います。ご確認をお願いしてよいでしょうか?
ifactory
メンバー
メンバー
記事: 33
登録日時: 2013年10月16日(水) 16:49

【1.0.22J-beta1】Dittoのextendersがうまく機能していない

投稿記事by ifactory » 2019年4月01日(月) 01:11

snippet.ditto.phpの修正にて、意図通り動くようになりました。
ありがとうございます。