wordpress面包屑导航源码分享

网上流传的面包屑导航大都很简陋,对自定义的taxonomy和post type的支持无能为力,虽然有很多优秀的面包屑导航插件,但是做为主题的开发者,肯定是想把面包屑导航功能集成到主题里的,免得用户还要下载插件和折腾。

今天分享的面包屑导航源码叫Breadcrumb Trail, 可以方便的集成到自己的主题里,无需用户安装和设置。

源码地址:源码下载

下载来后。在functions.php文件中引入,然后自己可以根据项目封装一个快捷函数,这是我的一个项目中封装的函数:

function dj_bread()
{
$args = [
'before' => '<div class="bPosition">',
'after' => '</div>',
'show_browse' => false,
'post_taxonomy' => array(
// 内置类型,key为post_type,value为taxonomy,一定要设置,不然内容页无法正常显示
'post' => 'category',
// 自定义的文章类型,自己可以删除
'dj_product' => 'dj_productlist',
),
];
breadcrumb_trail($args);
}

wordpress主题模板设置favicon.ico浏览器图标代码方法

非开发者,直接把favicon.ico 图标上传到网站根目录下,就是有wp-login.php文件的那个目录。至于图标制作方法,直接在网上在线制作就行了。

对于开发者,在开发主题时,有时需要添加个浏览器图标设置功能,代码如下:

// 设置favicon
add_filter(‘get_site_icon_url’, function () {
// 支持任意图片,图片只要路径正确即可
$fav = ‘aa.jpg’;
if($fav){
$favicon = $fav;
}else{
// 未设置的用户使用默认图标
$favicon = includes_url(‘images/w-logo-blue-white-bg.png’);
}

return $favicon;
});

 

wordpress禁用Gutenberg(古藤保)编辑器代码

在开发主题时,如果想默认启用旧版编辑器(经典编辑器),而不想让用户自己去手动下载安装。地精工作室整理了以下代码,把它们粘贴到主题中的functions.php文件中即可。

//禁止 WordPress5.0 使用 Gutenberg 块编辑器
add_filter('use_block_editor_for_post', '__return_false');
remove_action('wp_enqueue_scripts', 'wp_common_block_scripts_and_styles');

 

wordpress移除内容中的gallery相册

在开发wordpress主题时,有时候我们内容中虽然插入了gallery相册,但是显示的时候,我们并不想直接在内容中显示它们。wordpress为我们想到了这一点,并提供了一个filter hook,它就是“post_gallery”。

在functions.php文件中添加以下代码:

// 移除内容中的相册
add_filter('post_gallery', function(){
    return ' ';
});

注意返回的是一个空白字符,如果没有这个空白字符,内容中仍然会原样输出相册。

那么想在指定地方输出相册,应该怎么办呢?在想要显示的地方可使用以下参考代码:

$gallery = get_post_gallery(get_the_ID(), false);
$img_ids = [];
if(!empty($gallery['ids'])){
    // 获取到图片ID
    $img_ids = explode(',', $gallery['ids']);
}
foreach($img_ids as $a){
    // 获取到图片地址
    $src = wp_get_attachment_image_url($a);
    echo $src;
}