標題非常拗口,直接看圖。

這種分類列表其實還滿常見的,如果要整合 WordPress 的分類呢? 會需要額外能夠在分類上指定封面特色圖的功能。

而列表部分,既然是有主分類架構,那就是可以個別控制,採用主分類當參數,顯示所有子分類的做法。這個案例經過討論也還是採用短碼客制化不直接硬寫樣板檔案,可以復用。

分類開啟特色圖片功能部分採用:Categories Images 這款外掛。它能夠讓你輕鬆指定分類對應的圖示,以及保留開發彈性,實在很不錯!

而剩下短碼(shortcode)的部分如下:

function mxp_display_child_cats_list($atts) {
    extract(shortcode_atts(array(
        'slug' => '',
    ), $atts));

    $category = get_category_by_slug($slug);
    if ($category == false) {
        return '找不到主分類!';
    }
    $categories = get_categories(array('child_of' => $category->term_id, 'hide_empty' => 0, 'orderby' => 'name'));
    $html = '<ul>';
    for ($i = 0; $i < count($categories); $i++) {
        $cat = $categories[$i];
        $term_id = $cat->term_id;
        $name = $cat->name;
        $img = 'https://www.mxp.tw/path/to/default/image.png';
        $cslug = $cat->slug;
        $html .= '<li>';
        if (function_exists('z_taxonomy_image_url')) {
            $img = z_taxonomy_image_url($term_id);
            $html .= '<img src="' . $img . '"/>';
        }
        $html .= '<b><a href="' . get_category_link($term_id) . '">' . $name . '</a></b>';
        $html .= '</li>';
    }
    $html .= '</ul>';
    return $html;
}
add_shortcode('display_child_cats_list', 'mxp_display_child_cats_list');

使用方式就是把上面這段寫入子主題中的 functions.php 檔案裡。

然後在指定需求頁面中安插短碼!

短碼使用方式: [display_child_cats_list slug="主分類slug"]

或如下方式,安插在主題樣板檔案中即可~

<?php echo do_shortcode('[[display_child_cats_list slug="主分類slug"]]'); ?>

Facebook 外掛功能


Share:

作者: Chun

資訊愛好人士。主張「人人都該為了偷懶而進步」。期許自己成為斜槓到變進度條 100% 的年輕人。[//////////____30%_________]

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *