Главная > PHP > php shortcode

php shortcode

Например, для замены в $text {lists_4} на название списка и список элементов:

preg_match_all("/{lists\s*(.*?)}/si",$text,$matches,PREG_SET_ORDER);
if(count($matches)>0){
	foreach($matches as $m){
		$me=explode('_',trim(trim($m[0],'}'),"{"));
		if($me[0]=='lists'&&$me[1]>0){
			$replace='';
			$list=get_by_id($me[1],'lists');
			if($list['id']){
				$items=get_from_base('*','list_items',"`parent`='".$list['id']."' and `shown`=1",'pos');
				if(count($items)>0){
					$replace.='<div class="list">';
						$replace.='<div class="name">'.$list['name'].'</div>';
						$replace.='<ul>';
							foreach($items as $count=>$item){
								$replace.='<li class="item">'.$item['name'].'</li>';
							}
						$replace.='</ul>';
					$replace.='</div>';
				}
			}
			$text=str_replace($m,$replace,$text);
		}
	}
}
Categories: PHP Tags:
  1. Пока что нет комментариев.
Похожие публикации