跳到主要內容

發表文章

目前顯示的是 2月, 2021的文章

JS->控制type='radio'切換checked的方法-教學撰寫:徐嘉裕Neil hsu

使用prop("checked",true)可以指定type='radio'元件的狀態為checked,如果我們想用某一個單選按鈕來控制另外一個單遠按鈕的checked狀態可以使用以下方法 例如要切換下方的-> 設置預約發文為【不設置】時 , 上方的是否啟用內容變為【啟用】 , 設置預約發文為【設置】時 , 上方的是否啟用內容變為【不啟用】 ,像下圖這樣: HTML結構 <div class='col-sm-12 col-sm-12Custom'> <label class='col-sm-6'> <span id='helpBlock' class='help-block'>是否啟用內容</span> </label> <div class='col-sm-6'> <label class='radio-inline'> <input class='' type='radio' id='' name='enable' value='0' >不啟用 </label><label class='radio-inline'> <input class='' type='radio' id='' name='enable' checked=checked value='1' >啟用 </label> </div> </div> JS-CODE $("body").on("change", "[name=prior]", function (){ if($(this).val()=='1'){ $("#priortimebox").slideToggle("fast"

Xoops佈景區塊只用一個樣板程式顯示11個區塊內容包含自訂樣式的方法-教學撰寫:徐嘉裕Neil hsu

Xoops佈景其實可以透過樣板的includeq讀取子樣板傳遞變數,吧11個區塊陣列變數傳到1個樣板檔中執行,可以精簡樣版的使用也方便開發及定義內容樣式,方法如下: 1、先建立一個樣板檔->blockstpl.tpl放到佈景的tpl資料夾裡面 2、在blockstpl.tpl樣板中置如以下的code <div class="<{$site}>box"; <{foreach item=block from=$fromvar}> <aside> <h4 class="block-title"><{$block.title}></h4> <div class="blockcontent"><{$block.content}><div style='clear: both;'></div></div> </aside> <{/foreach}> </div> 3、然後就是佈景的bodytpl.tpl布局,依照設計需求分別引入blockstpl.tpl樣板並傳入$fromvar值 //左區塊 <{includeq file="$theme_name/blockstpl.tpl" fromvar=$xoBlocks.canvas_left  site=left}> //右區塊 <{includeq file="$theme_name/blockstpl.tpl" fromvar=$xoBlocks.canvas_right  site=right}> //中間上區塊 <{includeq file="$theme_name/blockstpl.tpl" fromvar=$xoBlocks.page_topcenter  site=topcenter}> //中間上左區塊 &l

Xoops2.5.11布景引入Xoops內建Bootstrap4的方法!!-教學撰寫:徐嘉裕Neil hsu

Xoops2.5.11之後提供了一個讓佈景可以引入Xoops內建Bootstrap4的方法,而且很好用,不會跟佈景原本引入的Bootstrap3衝突,方法如下!! 在佈景的根目錄放置theme_autorun.php檔,內容貼上以下code <?php xoops_load('XoopsFormRendererBootstrap4'); XoopsFormRenderer::getInstance()->set(new XoopsFormRendererBootstrap4()); 來看看效果如何?還沒放置theme_autorun.php之前的profile模組->編輯帳號表單頁面是這樣,原生的Xoops表單樣式。 放置theme_autorun.php之後的profile模組->編輯帳號表單頁面是這樣 很明顯欄位都美化很多,而且不會跟Bootstrap3衝突,有需要的朋友參考看看! 工作心得撰寫: 徐嘉裕 Neil hsu

寫一個清除Xoops->caches的function-教學撰寫:徐嘉裕Neil hsu

Xoops是使用Smarty樣板引擎產生內容,也就是吧php輸出成Smarty後再由樣版產生頁面,所以會產生樣板暫存檔(caches),當然Xoops後端也有刪除暫存檔的功能,不過我另外寫了一個刪除暫存檔的function方便使用,分享給大家參考! 1、在模組的function.php中加入以下code //刪除目錄中內容物件(不包含刪除目錄) function filedeletionArr($from="",$exclude="") { if (!file_exists($from)) {return false;} $dir = opendir($from); while (false !== ($file = readdir($dir))) { if ($file == '.' OR $file == '..') {continue;} if (is_dir($from . DIRECTORY_SEPARATOR . $file)) { filedeletionArr($from . DIRECTORY_SEPARATOR . $file); } else { if(empty(in_array($file, $exclude))){ unlink($from . DIRECTORY_SEPARATOR . $file); } } } closedir($dir); return true; } 2、然後再要使用刪除暫存檔的程式中呼叫 filedeletionArr(),例如定時自動刪除程式之類的,貼上以下code到程式中 // $from 暫存檔資料夾路徑 //$exclude 資料夾中不要刪除的檔案用陣列輸入 //清空smarty_cache filedeletionArr($from=XOOPS_VAR_PATH.'/caches/smarty_cache',$exclude=array('index.html')) //清空smarty_compile file