濟南建網站知識,網站建設技術靈魂總結
Website news, Technical summary of soul
我們在濟南網站建設中,通常用到的企業網站的cms,主要用的是beescms,但是現在這個cms是無法直接在前臺直接寫php代碼的,這樣就大大減少了網站前臺標簽的靈活性,我們只需要按照濟南騰飛網絡和你說如下幾點修改,就可以讓beescms前臺標簽支持php語句了,beescms前臺支持php語句的方法:
第一、打開beescms根目錄的include文件夾。
打開beescms根目錄的include文件夾,找到里面的tpl.class.php文件,在48行左右找到private function tpl_replace()這個函數,將這整個函數修改為:
//替換模板
private function tpl_replace(){
$template=$this->template_file_content;//模板內容
$preg_arr[] = '/\{\/loop\}/isU';
$preg_arr[] = '/\{(lang|print)\s+(.*)\/\}/isU';//輸出變量
$preg_arr[] = '/{cate\s+(.*)\s*\/}/isU';//欄目變量
$preg_arr[] = '/\{webinfo\s+(.*)\/\}/isU';//網站信息
$preg_arr[] = '/{position\s+(.*)\/}/isU';//當前位置
$preg_arr[] = '/\{if\s+(.*)\}/isU';//判斷
$preg_arr[] = '/\{else\}/';//判斷
$preg_arr[] = '/\{\/if\}/';//判斷
$preg_arr[] = '/\{flash\s*(.*)\/\}/isU';//flash幻燈
$preg_arr[] = '/\{list_page\s+source=(.*)\/\}/isU';//列表分頁
$preg_arr[] = '/\{body_page\s*\/\}/isU';//內容分頁
$preg_arr[] = '/{path\s+(.*)\s*\/\}/isU';//路徑
$preg_arr[] = '/{langs\s+(.*)\s*\/\}/isU';//語言
$preg_arr[] = '/{include\s+(.*)\s*\/\}/isU';//包含標簽
$preg_arr[] = '/\{assign\s+source=(.*)\s+name=(.*)\/\}/isU';//assign輸出
$replace_arr[] = "<?php \n}\n}?>";
$replace_arr[] = "<?php echo \\2;?>";
$replace_arr[] = '<?php echo $cate_info[\'cate_\\1_seo\'];?>';
$replace_arr[] = "<?php webinfo(\\1);?>";
$replace_arr[] = '<?php position(); ?>';
$replace_arr[] = "<?php if(\\1){?>";
$replace_arr[] = "<?php }else{?>";
$replace_arr[] = "<?php }?>";
$replace_arr[] = "<?php echo flash_ad('\\1');?>";
$replace_arr[] = "<?php echo \$\\1;?>";
$replace_arr[] = "<?php echo \$body_page;?>";
$replace_arr[] = "<?php cmspath('\\1');?>";
$replace_arr[] = "<?php langs('\\1');?>";
$replace_arr[] = "<?php \$this->display('\\1',1);?>";
$replace_arr[] = "<?php \$\\2=\\1;?>";
ksort($preg_arr);
ksort($replace_arr);
$template = preg_replace($preg_arr,$replace_arr,$template);
//循環標簽
$template=$this->made_tag($template,'loop');
return $template;
}
然后繼續在這個文件里面找到private function made_tag($tpl,$tag_type)這個函數,將這整個函數替換為:
//處理標簽
private function made_tag($tpl,$tag_type){
$preg_str='/{'.$tag_type.'(.*)}/isU';
preg_match_all($preg_str,$tpl,$rel);
if(!empty($rel[1])){
$tag_value='';
foreach($rel[1] as $k=>$v){
$val=preg_split('/\s/',trim($v));//標簽屬性
if(!empty($val)){
$tag_value2='';
foreach($val as $key=>$value){
if(!empty($value)){
$value_tag_arr=explode('=',$value,2);//屬性名稱和值
$tag_value2[$value_tag_arr[0]]=empty($value_tag_arr[1])?'':$value_tag_arr[1];
}
}
$tag_value[]=$tag_value2;
}
}
if(!empty($tag_value)){
//獲取標簽值
$replace=$this->get_tag_value($tag_value,$tag_type);
}
return str_replace($rel[0],$replace,$tpl);
}else{
return $tpl;
}
}
然后保存,到網站的后臺更新一下緩存,然后你在去前臺寫一個php的語句試試。
前臺的php語句格式應該是這樣:
<?php
//這里是php的語句//
?>
這就是實現beescms前臺支持php語句的方法。大家如果有什么不明白的地方可以聯系下我們,濟南網站建設公司-濟南騰飛網絡,大家可以一起交流進步。本文由濟南騰飛網絡發布,轉載請注明。http://www.wh-haojing.com
公司地址:山東省濟南市東關大街中泰大廈 Copyright?2006-2020 www.wh-haojing.com. 濟南網站設計我們值得信賴. All rights reserved .
7x24小時服務熱線:15069066861 網站建設博客