LoginSignup
0
0

More than 5 years have passed since last update.

Breadcrumb NavXTでarray_spliceを使うとErrorって出る

Last updated at Posted at 2018-09-18

bcn_after_fillを使い、array_poparray_unshiftでBreadcrumb NavXTのナビゲーションを調整することはできたんですが、

array_spliceを使うとFatal errorが出て「???」ってなったんで、とりあえず解決法

Array[i]とかで置き換え、挿入をする。

sample.php
function my_bcn_after_fill($bcnObj) {
  // 新しいパンくず項目を作成
  $trail_add = new bcn_breadcrumb();
  $trail_add->set_title("sample");
  $trail_add->set_url( site_url().'/sample/' );

  // 入れたい箇所の項目を保管
  $home_trail = $bcnObj->trail[1];

  // 差し替え
  $bcnObj->trail[1] = $trail_add;
  // 保管したものを入れる
  $bcnObj->trail[2] = $home_trail;

  // 例えばこんな感じ
  // HOME > hoge
  // HOME > sample > hoge

  return $bcnObj;
}
add_action('bcn_after_fill', 'my_bcn_after_fill');

なんでarray_splice使えないの?

入っているものを見ると、もともと入っている配列にはobject(bcn_breadcrumb)というオブジェクトで格納されていたんですが、
array_spliceで挿入したものはobject(bcn_breadcrumb)の中身がバラバラに入るようです。


他にスマートな方法があると思いますが、とりあえず見つかるまでの応急処置にどうでしょうか。(他のいい方法をご教授いただけるととても喜びます)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0