/**
* @license Copyright (c) 2003-2017, CKSource - Frederico Knabben. All rights reserved.
* For licensing, see LICENSE.md or http://ckeditor.com/license
*/
CKEDITOR.editorConfig = function( config ) {
// Define changes to default configuration here.
// For complete reference see:
// http://docs.ckeditor.com/#!/api/CKEDITOR.config
config.uiColor = '#F2F2F2';
// The toolbar groups arrangement, optimized for two toolbar rows.
config.toolbarGroups = [
{ name: 'document', groups: [ 'mode', 'document', 'doctools' ] },
//{ name: 'clipboard', groups: [ 'clipboard', 'undo' ] },
{ name: 'basicstyles' },
{ name: 'links' },
{ name: 'blocks' },
{ name: 'insert' },
{ name: 'align' },
{ name: 'cleanup' },
{ name: 'codesnippet' },
{ name: 'imgur' },
//'/',
{ name: 'paragraph', groups: [ 'list' ] },
{ name: 'styles' },
{ name: 'colors' },
{ name: 'tools' },
{ name: 'about' }
];
// Whether the toolbar can be collapsed by the user.
//config.toolbarCanCollapse = true;
//config.toolbarStartupExpanded = true;
// Remove some buttons provided by the standard plugins, which are
// not needed in the Standard(s) toolbar.
config.removeButtons = 'PasteText,PasteFromWord,Cut,Copy,Paste,Undo,Redo,Anchor,Blockquote,HorizontalRule,Format,Font,Image,Styles,SpecialChar,Templates';
// Set the most common block elements.
config.format_tags = 'p;h1;h2;h3;pre';
// Simplify the dialog windows.
config.removeDialogTabs = 'image:advanced;link:advanced;link:upload';
// Set the file uploader
config.filebrowserUploadUrl = g5_editor_url+"/upload.php?type=Images";
// Set Editor default Height
config.height = 300;
// CODESNIPPET SETTING
config.extraPlugins = 'codesnippet,simpleuploads,imgur';
config.codeSnippet_theme = 'school_book';
config.imgurClientId = '';
// CKEDITOR PLUGINS LOADING
//config.extraPlugins = 'pbckcode'; // add other plugins here (comma separated)
// PBCKCODE CUSTOMIZATION
/*
config.pbckcode = {
// An optional class to your pre tag.
cls: 'line-numbers',
// The syntax highlighter you will use in the output view
highlighter: 'PRISM',
// An array of the available modes for you plugin.
// The key corresponds to the string shown in the select tag.
// The value correspond to the loaded file for ACE Editor.
modes: [['HTML', 'html'], ['CSS', 'css'], ['PHP', 'php'], ['JS', 'javascript']],
// The theme of the ACE Editor of the plugin.
theme: 'twilight',
// Tab indentation (in spaces)
tab_size: '4'
};
*/
};
config.js 에서 제가 사용하는 방법입니다.
config.removeButtons = 'PasteText,PasteFromWord,Cut,Copy,Paste,Undo,Redo,Anchor,Blockquote,HorizontalRule,Format,Font,Image,Styles,SpecialChar,Templates';
// Simplify the dialog windows.
config.removeDialogTabs = 'image:advanced;link:advanced;link:upload';
에 image 추가로 기본 ckeditor 이미지 업로드 버튼 삭제
// CODESNIPPET SETTING
config.extraPlugins = 'codesnippet,simpleuploads,imgur';
사용하고자 하시는 플러그인이 다수라면 위처럼 , 로 구분하여 수정해주시면 됩니다.^^
안녕하세요 두환님 질문 드려도 될련지요??
페이팔 결제하고 파일 받았습니다.
하지만 어떻게 해야 할지를 모르겠어요..
이윰빌더 사용하며 ck4 이윰꺼 쓰고 있습니다.
config.js에서
// CKEDITOR PLUGINS LOADING
config.extraPlugins = 'simpleuploads';
위 소스는 어디에다가 넣어야 하며 기존에 업로드 이미지를 지우고 새로운 업로드 이미지는 어떻게 추가해야 하나요?
ck에디터 codesnipet 적용시
head.sup.php head와 head 사이에 추가해야 할 사항
에디터의 경로와 디렉토리명은 같지 않기 때문에
URL은 에디터 경로에 맞게 변경해줘야 한다.
테마를 변경하고 싶으면 /codesnippet/lib/highlight/styles/에
있는 css를 넣어준다.
<script src="<?php echo G5_EDITOR_URL ?>/ckeditor/plugins/codesnippet/lib/highlight/highlight.pack.js"></script>
<link rel="stylesheet" href="<?php echo G5_EDITOR_URL ?>/ckeditor/plugins/codesnippet/lib/highlight/styles/monokai_sublime.css">
<script>hljs.initHighlightingOnLoad();</script>
제목 없는 게시판 만들기 그누보드나 테마 빌더의 게시판 모두 가능하다.
먼저 sir의 제목없는 게시판 스킨을 참고하여
sir 제목없는 게시판 글 링크
그누보드를 사용한다면
write.tail.skin.php 를 pc와 모바일의 게시판 디렉토리에 업로드 하면 되고
빌더는 디렉토리 구성에 따라 조금씩 틀리다
이윰빌더 시즌4를 사용한다면
사용하는 테마의 게시판 스킨의
write.skin.html.php 에 write.tail.skin.php의 내용을 하단 스크립트 부분에 넣어야 한다.
function changeTitle() {
<?php
$subject_limit = 70;
$target_editor = $is_dhtml_editor ? $config['cf_editor'] : "none";
?>
if (wr_subject.value.trim() == "") {
<?php
if ($target_editor == "cheditor5") echo "changeSubject = ed_wr_content.outputBodyHTML();";
else if ($target_editor == "smarteditor2") echo "changeSubject = oEditors.getById['wr_content'].getIR();";
else if ($target_editor == "ckeditor4_eyoom") echo "changeSubject = CKEDITOR.instances.wr_content.getData();";
else echo "changeSubject = wr_content.value;";
?>
btn_submit.insertAdjacentHTML("afterend", "<div id=entityDiv style=display:none></div>");
entityDiv.innerHTML = changeSubject;
changeSubject = entityDiv.innerText;
reSubject = "";
changeEnter = changeSubject.replace(/\n/gi, " ");
noTag = changeEnter.replace(/(<([^>]+)>)/gi, " ").trim();
for (var i in noTag) reSubject = reSubject + (noTag[i] == " " && noTag[i - 1] == " " ? "" : noTag[i]);
wr_subject.value = reSubject.length <= <?php echo $subject_limit; ?> ? reSubject : reSubject.slice(0, <?php echo $subject_limit; ?>) + "...";
}
}
스크립트 부분에 위처럼 삽입하고
ckeditor를 사용한다면
else if ($target_editor == "ckeditor4_eyoom") echo "changeSubject = CKEDITOR.instances.wr_content.getData();";
else echo "changeSubject = wr_content.value;";
사용하는 ckeditor 디렉토리명을 넣고 echo 부분도 위와 같이 바꾸어 준다.
여기까지만 하면 제목창이 보여도 내용의 글이 제목이 되어 버린다.
깔끔하게 제목장도 안보이게 하고 싶으면
<section>
<div class="row" style='display: none;'>
<div class="col col-12 md-m-b-10">
<div class="position-relative">
<label for="wr_subject" class="label">
<strong class="sound_only"> 필수</strong>
</label>
<label class="input required-mark">
<input type="text" name="wr_subject" value="<?php echo $subject; ?>" id="wr_subject" required size="50" maxlength="255" placeholder="제목을 입력해 주세요.">
</label>
<?php if ($is_member) { //임시 저장된 글 기능 ?>
<span class="autosave-btn">
<script src="<?php echo G5_URL; ?>/js/autosave.js"></script>
<button type="button" id="btn_autosave" class="btn-e btn-dark position-relative">임시 저장된 글 <span id="autosave_count" class="badge badge-red rounded"><?php echo $autosave_count; ?></span></button>
<div id="autosave_pop">
<div class="autosave_heading">
<strong>임시 저장된 글 목록</strong>
<span class="autosave_close"><i class="fas fa-times"></i></span>
</div>
<div class="clearfix"></div>
<ul></ul>
<div><span class="autosave_close btn-e btn-e-dark btn-e-sm">닫기</span></div>
</div>
</span>
<?php } ?>
</div>
</div>
</div>
</section>
제목창을 표시해주는
div class에 style='display: none;' 넣어주면 제목창은 깔끔하게 사라진다.
한번씩 ck에디터 툴바 메뉴들을 수정할때 참고하면 유용한
// Toolbar configuration generated automatically by the editor based on config.toolbarGroups.
config.toolbar = [
{ name: 'document', groups: [ 'mode', 'document', 'doctools' ], items: [ 'Source', '-', 'NewPage', 'Preview' ] },
//{ name: 'document', groups: [ 'mode', 'document', 'doctools' ], items: [ 'Source', '-', 'Save', 'NewPage', 'Preview', 'Print', '-', 'Templates' ] },
{ name: 'clipboard', groups: [ 'clipboard', 'undo' ], items: [ 'Cut', 'Copy', 'Paste', 'PasteText', 'PasteFromWord', '-', 'Undo', 'Redo' ] },
{ name: 'editing', groups: [ 'find'], items: [ 'Find', 'Replace' ] },
//{ name: 'editing', groups: [ 'find', 'selection', 'spellchecker' ], items: [ 'Find', 'Replace', '-', 'SelectAll', '-', 'Scayt' ] },
{ name: 'insert', items: [ 'Image', 'Table', 'HorizontalRule', 'Smiley', 'SpecialChar', 'PageBreak' ] },
//{ name: 'insert', items: [ 'Image', 'Flash', 'Table', 'HorizontalRule', 'Smiley', 'SpecialChar', 'PageBreak', 'Iframe' ] },
//{ name: 'forms', items: [ 'Form', 'Checkbox', 'Radio', 'TextField', 'Textarea', 'Select', 'Button', 'ImageButton', 'HiddenField' ] },
'/',
{ name: 'basicstyles', groups: [ 'basicstyles' ], items: [ 'Bold', 'Italic', 'Underline', 'Strike', 'Subscript', 'Superscript' ] },
//{ name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ], items: [ 'Bold', 'Italic', 'Underline', 'Strike', 'Subscript', 'Superscript', '-', 'RemoveFormat' ] },
{ name: 'paragraph', groups: [ 'list', 'indent', 'blocks', 'align' ], items: [ 'NumberedList', 'BulletedList', '-', 'Outdent', 'Indent', '-', 'Blockquote', 'CreateDiv', '-', 'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock' ] },
//{ name: 'paragraph', groups: [ 'list', 'indent', 'blocks', 'align', 'bidi' ], items: [ 'NumberedList', 'BulletedList', '-', 'Outdent', 'Indent', '-', 'Blockquote', 'CreateDiv', '-', 'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock', '-', 'BidiLtr', 'BidiRtl', 'Language' ] },
{ name: 'links', items: [ 'Link', 'Unlink', 'Anchor' ] },
'/',
{ name: 'styles', items: [ 'Styles', 'Format', 'Font', 'FontSize' ] },
{ name: 'colors', items: [ 'TextColor', 'BGColor' ] },
{ name: 'tools', items: [ 'Maximize', 'ShowBlocks' ] },
{ name: 'others', items: [ '-' ] },
{ name: 'about', items: [ 'About' ] }
];
// Toolbar groups configuration.
config.toolbarGroups = [
{ name: 'document', groups: [ 'mode', 'document', 'doctools' ] },
{ name: 'clipboard', groups: [ 'clipboard', 'undo' ] },
{ name: 'editing', groups: [ 'find', 'selection', 'spellchecker' ] },
//{ name: 'forms' },
'/',
{ name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ] },
{ name: 'paragraph', groups: [ 'list', 'indent', 'blocks', 'align', 'bidi' ] },
{ name: 'links' },
{ name: 'insert' },
'/',
{ name: 'styles' },
{ name: 'colors' },
{ name: 'tools' },
{ name: 'others' },
{ name: 'about' }
];
ck에디터 simpleuploads 플러그인
sir에 이미지 업로드 기능이 너무 부럽더라
구글링 하니 외국 블로거가 플러그인을 팔고 있네
시간 없고 맥주4캔 정도 마셨다 생각하고 10유로 투자하면
속이 시원해진다.
링크
The New Territory: SimpleUploads (alfonsoml.blogspot.com)
첨부파일에 심플업로드플로그인 추가가 되어 있지않은
제가 쓰고 있음 이윰 ckeditor을 첨부합니다.
적용법은 간단합니다.
ckeditor 플러그인에 구입한 플러그인 넣으시고
config.js 에
// CKEDITOR PLUGINS LOADING
config.extraPlugins = 'simpleuploads';
플러그인 추가하시면 되요~