티스토리 뷰

예제로 알아보는 애드온 제작


기능

게시글에 전화번호가 있을 경우 끝자리 4개의 숫자를 숨김(*표시) 처리


애드온 이름

게시글 내용 변경(document_content_change)


예제를 위한 선행 작업

XE 설치

"사이트 메뉴 편집" > 메뉴추가 > 게시판 > 메뉴 ID 는 "board"로 메뉴를 추가합니다.


제작 애드온의 기능

안녕하세요

제 전화번호는 010-1234-5678 입니다.


전화번호 부분을 010-1234-**** 로 변경


document_content_change.addon.php 파일 작성

시작부분 작성

<?php

if(!defined('__XE__'))

exit();


$called_position 정하기

모듈 실행이 완료된 후 이므로 $called_position은 after_module_proc를 사용합니다.


<?php

if(!defined('__XE__'))

exit();

if($called_position == 'after_module_proc')
{
}

기능 구현

boardView::dispBoardContent()에서 Context에 할당된 oDocument에 접근해서 현재 노출될 게시글 내용을 가져옵니다.


그 내용에 접근해서 전화번호를 찾아서 변경합니다.



if($called_position == 'after_module_proc' && $this->module=="board")

{

$oDocument = Context::get('oDocument');

$pattern = "/(0[0-9]{1,2})-([0-9]{3,4})-([0-9]{4})/i";

$replace = "$1-$2-****";


$oDocument->variables['content'] = preg_replace($pattern, $replace, $oDocument->variables['content']);

}


위와 같이 작성 후 결과를 확인해 보면


안녕하세요

제 전화번호는 010-1234-**** 입니다.


로 바껴있음






댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함