게시판 스킨에서 뭔가 class.function.php 파일을 인클루드해서 php문 내에 함수를 사용하는 방법을 연구했던거 같은데
하다가 만 건지 관련 코드만 있고 어떻게 사용하는지는 까먹었고..@_@
아마 {@ .. } 이런 코드에서는 php function {..} 을 사용하지 못하니깐 해보려고 했던거 같은데 말이죠.
더 좋은 코드도 있을텐데 일단 이렇게 구현해봤습니다. 아직 라라벨 블레이드 문법은 잘 모르고..@_@
1. 상단에 (루프문 바깥)
<?
//$userID = $__Context->document->get('user_id');
function masked($str) {
$maskedStr = "";
if (strlen($str) > 4) {
$maskedStr = substr($str, 2, strlen($str) - 4);
for ($i = 0; $i < strlen($maskedStr); $i++) {
$maskedStr[$i] = "*"; }
$maskedStr = substr($str, 0, 2) . $maskedStr . substr($str, -2);
} else {
$maskedStr = $str;
} return $maskedStr;
}
//echo masked('eonadsfsd');
?>
2. 글쓴이를 출력하는 부분의 코드
<!--@if($val->type=='user_id')--><?=masked($__Context->document->get('user_id'))?>
<!--@else--> {$document->get('nick_name')} <!--@end-->
ps. 라라벨 블레이드 문법을 일반 html 파일에서 쓰려면
@version(2) 혹은 <config version="2" /> 를 html 파일 맨 위에 작성하면 된다던데
(참조 : https://rhymix.org/manual/theme/intro )
그런데, 이게 인클루드되는 게시판 스킨에서도 동작되는건진 모르겠고.
그리고 해봤는데,
Error #0 "Call to a member function getTitle() on null" in modules/board/skins/eb_basic/template/list/list.html on line 28
이런 기존 함수들에서 충돌나는 부분도 있고 해서 기존의 것을 두고 일부만 사용하는 식은 어려운 거 같더군요.