dfwp/doublefou

此包已被废弃且不再维护。未建议替代包。
此包最新版本(dev-master)的许可证信息不可用。

dfwp 主题框架库

dev-master 2020-01-30 11:25 UTC

This package is auto-updated.

Last update: 2023-04-29 00:30:10 UTC


README

PHP 组件

面包屑导航

use Doublefou\Components\Breadcrumb;
use Doublefou\Components\BreadcrumbLink;
$breadcrumb = new Breadcrumb();
$newLink = new BreadcrumbLink(
	'http://www.google.fr', //Link target
	'Link name', //Link name
	false //Is current ?
);
$breadcrumb->addLink(
	$newLink, //Link to add
	null //Link position 
);
$breadcrumbLinks = $breadcrumb->getBreadCrumb();
foreach ($breadcrumbLinks as $breadcrumbLink) {
	echo $breadcrumbLink->link;
	echo $breadcrumbLink->current;
	echo $breadcrumbLink->title;
}

自定义菜单集合

use Doublefou\Components\CustomMenuCollection;
use Doublefou\Components\CustomMenuItem;
$menuCollection = new CustomMenuCollection(
	'menu-header' //Menu slug
);
$menuItems = $menuCollection->getItems();
foreach($menuItems as $menuItem){
	echo $menuItem->getPermalink().'<br>';
	echo $menuItem->getTitle().'<br>';
	echo $menuItem->getParentID().'<br>';
	echo $menuItem->getID().'<br>';
	echo '<hr>';
	if($menuItem->hasChildren()){
		$submenuItems = $menuItem->getCustomMenuCollection()->getItems();
		foreach($submenuItems as $submenuItem){
			echo $submenuItem->getPermalink().'<br>';
			echo $submenuItem->getTitle().'<br>';
			echo $submenuItem->getParentID().'<br>';
			echo $submenuItem->getID().'<br>';
			echo '<hr>';
		}
	}
}

摘要

从文章内容标题自动构建摘要

use Doublefou\Components\Summary;
$summaryBuilder = new Summary(
	'2-4', //Title levels, exemple : 1-5
	null //By default watching current post content, you can setup other content like acf fields
);
$summaryItems = $summaryBuilder->getSummary();
if(count($summaryItems) > 0)
{
	foreach($summaryItems as $summaryItem){
		echo $summaryItem->getLevel();
		echo $summaryItem->getID();
		echo $summaryItem->getTitle();
	}
}

PHP 辅助函数

自定义帖子列管理器

管理 CPT 在管理列表中的列。

use Doublefou\Helper\CustomPostColumnsManager;
$test = new CustomPostColumnsManager('recette');
$test->addACFColumn('Type','taxonomy','recette_type',true,'15%');
$test->addACFColumn('Note','select','recette_stars',true,'10%');
$test->addACFColumn('Date de parution','default','recette_date',true,'10%');
$test->addACFColumn('Miniature','image','recette_miniature',false,'15%');
$test->removeColumn('date');