ブログカード(独自キャッシュ)のエラー

Simplicityの特徴 › フォーラム › 不具合報告 › ブログカード(独自キャッシュ)のエラー

  • このトピックには9件の返信、2人の参加者があり、最後にまさひこにより10年、 3ヶ月前に更新されました。
9件の返信スレッドを表示中
  • 投稿者
    投稿
    • #42440
      まさ
      ゲスト

      Simplicity 2.1.8から2.2.0にアップデートしたところ、ブログカード(外部リンク)に関してエラーが発生しました。

      状況としては「外部ブログガードタイプ」を「ブログカード(独自キャッシュ)」にしたところ外部リンクがあるページで以下のエラーが表示され、記事が表示されませんでした。(パスは一部伏字にしました)

      Fatal error: Cannot redeclare class OpenGraph in /…./simplicity2/lib/open-graph.php on line 21

      「外部ブログガードタイプ」を「はてなカード」に変更したところ無事記事は表示されるようになったのですが、「ブログカード(独自キャッシュ)」を利用するために試してみると良いことなどありましたら、アドバイスいただけると助かります。

      関連しそうなプラグインとして「All in One SEO」を無効にしてみたのですが、
      状況は変わりませんでした。

    • #42453
      Hidekichi
      ゲスト

      だいたいの Cannot redeclare class とかは、再定義していたり読み込みが重複したりしている時に起こるのでrequireやincludeをrequire_onceやinclude_onceに変更すれば解決することが多いんですけれども、中身をまだ見ていないのでどうなってるかは、今の所わかりません。

      ここらはまたわいひらさんからアナウンス、修正(方法)の公開等があるかと思います。

    • #42470
      アバター画像わいひら
      キーマスター

      クラス名が競合してしまっているっぽいですね。
      おそらく、何らかのプラグインと競合していると思うので、まずは全てのプラグインを無効化して、動作するか試してください。
      全てのプラグインを停止して、動作するようになるようであれば、個別のプラグインを一つ一つ有効化していって、原因となるプラグインを特定してください。

    • #42489
      まさひこ
      ゲスト

      ありがとうございます。
      確認した結果、open-graph.phpと同じソースを使っている別のプラグインを見つけました。
      https://wordpress.org/support/view/plugin-reviews/pocket-news-generator

      利用頻度が低いので一旦停止したところ表示できるようになりました。利用する際に一時的にオンにするか、自力で修正できないかトライしてみます。

    • #42500
      アバター画像わいひら
      キーマスター

      プラグインの以下の部分の

      class OpenGraph implements Iterator

      OpenGraphというクラス名を変更すればいけるのではないかと思うのですけど、実際に試してはいないので、正常動作するかはわからないです。

    • #42520
      まさひこ
      ゲスト

      blog-card.phpで以下のようにすることでプラグインも動作するようになりました。
      プラグイン側での指定が先のようで、プラグイン側の修正では駄目でした。

      // require_once(‘open-graph.php’);
      if(!class_exists(‘OpenGraph’)){
      require_once(dirname(__FILE__) . ‘/open-graph.php’);
      }

      ただ、これだとslmplicityバージョンアップ時に戻るので、プラグイン側のクラス名変更にトライしてみます。

    • #42538
      アバター画像わいひら
      キーマスター

      Simplicity側の名前変更で修正しても良いのですが、キャッシュはOpenGraphというクラス名でシリアライズ化して作成しているため、名前を変更すると、エラーの原因となる可能性もあるので、そのままにしておきたいと思います。(試してみたところ、今のところエラーは出ないけどnoticeは出る)
      メジャーバージョンが上がる頃には、かぶらない名前に変更しておこうと思います。

    • #42566
      まさひこ
      ゲスト

      ありがとうございます。
      プラグイン側のクラス名変更で問題なさそうなので、これで使ってみます。

      ただ、エラーは出なくなったのですがまだおかしいので、ご相談です。
      別件なのですが、独自キャッシュ関連の問題なのでこのスレで続けさせてください。

      独自キャッシュは作成されるようになったのですが、以下の2つのファイルが作成されます。
      画像のリンク先は1つ目の名称になっているのですが、画像がないとエラーになります。

      261dd715ebee9a0c4fb62860c2389d83.jpeg?fit=1408%2C842
      261dd715ebee9a0c4fb62860c2389d83.jpeg?fit=1408%2C842.jpg

      ためしに以下のように上記のファイルの名前を変更すると表示されます。
      261dd715ebee9a0c4fb62860c2389d83.jpeg

      どこか設定がおかしいか、ファイル作成時の名称に問題があるようなのですが対応方法等ありますでしょうか。

    • #42574
      アバター画像わいひら
      キーマスター

      それに関しては、具合の再現方法がわからないので実際のページの実例がないとちょっと何とも言えないです。(見てもわからない可能性があります)
      あと出来れば、別件の場合は、タイトルを設定して新しいトピックを立てていただけると助かります。

    • #42582
      まさひこ
      ゲスト

      わかりました。ページへのリンクを含めて別トピックをたてます。

9件の返信スレッドを表示中
  • トピック「ブログカード(独自キャッシュ)のエラー」には新しい返信をつけることはできません。
スポンサーリンク
アドセンス(大)
アドセンス(大)