これは、David DeSandro の Isotope に基づいて組み合わせフィルターを作成する最初のショットです。この関数は、私の Web サイトに既に実装されている Isotope フィルターに基づいて作成しました。WordPress のカテゴリを出力し、Isotope フィルタとして実装します。現在のところ、すべてが非常にうまく機能しています。私がやろうとしているのは、データを抽出した後、各 if elseif ステートメントを独自の列にスタイル設定することです。例えば:
**<div class="column"><--I would like to add a div like this here**
elseif (cat_is_ancestor_of(156, $filtered)) {
$option .= '<li class="child-style" data-link="'.$filtered->slug.'">';
$option .= '<a href="" title="'.$filtered->slug.'">';
$option .= ' ';
$option .= $filtered->name;
$option .= '</a></li>';
}
**</div><--and here**
以下は、これを達成するために私が書いた関数の始まりです。今のところ動作しますが、データ (この場合はカテゴリと子カテゴリ) をきちんとした 1 つの列のリストに出力します。最終的には、各親が独自の列に表示されるように、このカテゴリのリストのスタイルを設定したいと考えています。
これは、このエラーを取得せずに if、elseif ステートメントを div で区切る方法を見つけることができないため、私が困難に直面しているところです:
Parse error: syntax error, unexpected 'elseif' (T_ELSEIF) in /Users/djmorigeau/localhost/wordpress/wp-content/themes/skittles-child/functions.php on line 89
. <div class="col_3">code</div>
これは、結果を列にグループ化する方法についてのアイデアがあれば、各 if、elseif ステートメントをラップしたときに受け取るエラーです。
function color_filter($categories, $type = 'blog') {
$catArgs = array(
'type' => 'post',
'child_of' => 0,
'parent' => '',
'orderby' => 'name',
'order' => 'ASC',
'hide_empty' => 1,
'hierarchical' => 1,
'taxonomy' => 'category',
'pad_counts' => false );
$catList = get_categories($catArgs);
if(isset($categories[0])) {
$categories = unserialize($categories[0]);
if (function_exists('color_filter')) {
$option = '<div class="megamenu_container megamenu_dark_bar megamenu_dark"><ul class="megamenu">';
$option .= '<li><a class="megamenu_drop" href="#">Filter<em class="dropdown-arrow"></em></a>';
$option .= '<div class="dropdown_fullwidth"><div class="mpcth-'.$type.'-categories mpcth-filterable-categories">';
$option .= '<ul>';
$option .= '<li class="active" data-link="post"><a href="#">'.__('All', 'mpcth').'</a></li>';
foreach ($catList as $filtered) {
if((isset($categories[$filtered->slug]) && $categories[$filtered->slug] == 'on') || !isset($categories[$filtered->slug])) {
if (cat_is_ancestor_of(37, $filtered)) {
$option .= '<li class="child-style" data-link="'.$filtered->slug.'">';
$option .= '<a href="" title="'.$filtered->slug.'">';
$option .= ' ';
$option .= $filtered->name;
$option .= '</a></li>';
}
elseif (cat_is_ancestor_of(156, $filtered)) {
$option .= '<li class="child-style" data-link="'.$filtered->slug.'">';
$option .= '<a href="" title="'.$filtered->slug.'">';
$option .= ' ';
$option .= $filtered->name;
$option .= '</a></li>';
}
elseif (cat_is_ancestor_of(176, $filtered)) {
$option .= '<li class="child-style" data-link="'.$filtered->slug.'">';
$option .= '<a href="" title="'.$filtered->slug.'">';
$option .= ' ';
$option .= $filtered->name;
$option .= '</a></li>';
}
elseif (cat_is_ancestor_of(188, $filtered)) {
$option .= '<li class="child-style" data-link="'.$filtered->slug.'">';
$option .= '<a href="" title="'.$filtered->slug.'">';
$option .= ' ';
$option .= $filtered->name;
$option .= '</a></li>';
}
else {
$option .= '<li data-link="'.$filtered->slug.'">';
$option .= '<a href="" title="'.$filtered->slug.'">'.$filtered->name.'</a></li>';
}
}
}
$option .= '</ul></div></div></li></ul></div>';
echo $option;
}
}
}