단축 케이크 (바로가 코드 UI)
기고자 : FusionEngineering, Mattheu, Danielbachhuber, Zebulonj, Goldenapples, Jitendraharpalani, Sanchothefat, Bfintal, Davisshaver, Garyj, Mte90, Fredserva, Khromov, Bronsonquick, Dashaluna, Sc0ttkclark.
태그 : 단축 코드
최소한 필요 : 4.5
테스트 : 5.0.3
안정적인 태그 : 0.7.4
라이센스 : GPLV2 이상
라이센스 URI : http://www.gnu.org/licenses/gpl-2.0.html
ShordCake는 WordPress Shortcodes를 사용하여 케이크 조각을 만듭니다.
설명
add_shortcode
와 함께 사용되는 Shortcake는 게시물에 단축 코드를 추가하고 컨텐츠 편집기 내에서이를보고 편집하기위한 사용자 친화적 인 인터페이스를 제공합니다.
플러그인을 설치 한 후에는 단축 코드에 대해 UI를 등록해야합니다. 영감을 얻으려면 야생에서 바로 가스 케이크의 예를 확인하십시오.
버그 또는 기능 요청을보고하려면 GitHub 문제를 사용하십시오.
설치
단축 케이크는 다른 WordPress 플러그인과 마찬가지로 설치할 수 있습니다.
그렇게 한 후에는 코드에 대한 UI를 등록해야합니다.
0.4.0의 새로운 것은 JavaScript 함수를 이벤트 속성 업데이트에 첨부하는 기능입니다. 액션 후크는 다른 사람의 값에 따라 필드를 동적으로 표시하거나 숨기거나 사용자 정의 검증 규칙을 구현하는 데 사용될 수 있습니다.
자주 묻는 질문
임의의 키/값 쌍에 대한 UI를 단축 코드 속성으로 어떻게 등록합니까?
ShortCake는 사용자 지정 키 => 값 쌍을 지원하지 않기 때문에 단축 코드 속성으로 지원하지 않습니다.
Shortcake 0.7.x로 업그레이드 한 후 일부 단축 코드 UI 필드 (Post Select, User Select 등)는 예상대로 작동하지 않습니다. 무엇을 할 수 있습니까?
버전 0.7.0에서 우리는 Select2 라이브러리의 최신 지점으로 업데이트되었으며,이 필드 유형에서 향상된 Select 필드를 제공합니다. 이로 인해 이전 버전의 Select2를 흡수하는 플러그인과 알려진 플러그인과 충돌합니다. (알려진 갈등이있는 인기있는 플러그인에는 WooCommerce 및 Advanced Custom Fields Pro가 포함됩니다.)
이 플러그인과 충돌하는 경우 WP-Config.php (또는 'Init'후크 이전에 정의 된 모든 곳에서 상수 SELECT2_NOCONFLICT
정의하여 Select2를 별도의 네임 스페이스에로드하는 플래그를 설정할 수 있습니다.
define( 'SELECT2_NOCONFLICT', true );
실행 테스트
PHPUnit을 사용하여 PHP에 대한 테스트 커버리지와 Jasmine을 사용한 JavaScript가 있습니다.
로컬로 테스트를 실행합니다
Jasmine 테스트는 grunt jasmine
사용하여 실행할 수 있으며 grunt scripts
작업의 일부로 실행됩니다. Jasmine Test Suite에서 사용하는 Core WordPress 파일을 업데이트하려면 grunt updateJasmineCoreScripts --abspath="/path/to/wordpress-install"
실행하십시오.
스크린 샷
1. 단축 케이크가 없으면 바로가 코드는 최소 UI를 갖습니다.
2. 그러나 단축 케이크를 사용하면 Tinymce는 단축 코드를 Tinymce보기에서 렌더링합니다.
3. 단축 코드 컨텐츠 및 속성을 편집하기 위해 사용자 친화적 인 UI를 추가하십시오.
4. "미디어 추가"를 통해 게시물에 새 단축 코드를 추가하십시오.
업그레이드 통지
0.4.0
placeholder
속성 인수에 대한 호환성 Shim을 제거했습니다. meta
인수를 사용하여 해당 분야의 자리 표시자를 등록해야합니다.
0.3.0
우리는 마법의 content
속성에 대한 호환성 심을 제거했습니다. 내부 컨텐츠 편집을 지원하기 위해 이것을 사용하는 경우 inner_content
사용하려면 UI 등록을 변경해야합니다.
changelog
0.7.4 (2019 년 1 월 16 일)
- 블록 편집기 호환성 : 문서 헤드 앞에서 템플릿이 출력되지 않아 브라우저를 퀴크 스 모드로 만들어 블록 편집기에서 일부 CSS 스타일을 깨뜨 렸습니다.
- 버그 수정 : 위의 버그 수정.
- 버그 수정 : 바로 드로 코드에 표시 옵션이 있고 기본 설정이없는 선택 필드가 포함 된 경우 삽입 포스트 요소 모달이 비워지는 JavaScript 오류를 수정하십시오.
- 버그 수정 : 게시물 요소가 삽입 된 후 미디어 컨트롤러의 "파일 선택"버튼이 응답하지 않은 버그 수정.
- 향상 : 옵션 "명확한 허용"필드 속성을 추가하여 Select2 필드 (Post, User 또는 Term Select)로 전달하여 멀티 선택 필드를 한 번의 클릭으로 지울 수 있습니다. (이 옵션은 기본값 꺼짐으로 기존 필드에 영향을 미치지 않아야합니다.)
0.7.3 (2017 년 9 월 5 일)
- 보안 : AJAX 렌더링 단축 코드 콜백에서 NOCE 유효성 검사를 사용하여 CSRF로부터 보호하십시오.
- 버그 수정 : 동일한 JS가 모든 필드 유형에서 발사되는지 확인하십시오.
- 버그 수정 : 여러 선택 필드에 영향을 미치는 버그 수정 (값을 설정 한 후에는 값을 설정할 수없고 여러 기본값을 설정할 수 없습니다).
- 버그 수정 : 2 %가 포함 된 인코딩 된 필드를 방지합니다.
- 버그 수정 : 단축 코드를 저장하지 않고 닫은 경우 미디어 모달 상태가 제대로 재설정되지 않은 일부 문제를 해결하십시오.
- 버그 수정 : 페이지에 여러 WP_EDITOR 인스턴스가있는 경우 지원 사례를 편집중인 단축 코드가 올바른 페이지로 전송되어 있는지 확인하십시오.
- 향상 : Post_Select 필드가 둘 이상의 게시물 유형에서 선택할 때 Post 이름과 함께 게시 유형을 표시하여 쉽게 선택하십시오.
- 향상 : 이미지뿐만 아니라 첨부 파일 유형에 대한 첨부 파일 썸네일 표시.
- 향상 : 단축키 UI가있는 단축 코드가 등록되지 않은 경우 유용한 오류 메시지를 추가로 추가하십시오.
- 노르웨이어 번역을 업데이트하십시오
0.7.2 (2017 년 4 월 24 일)
- 버그 수정 : WordPress 4.7.4의 동작을 수정하여 바로가 코드를 편집하면 편집되는 단축 코드를 업데이트하지 않고 편집기에 새 단축 코드를 삽입합니다.
- 버그 수정 : 속성에서 퍼센트 (%) 문자를 탈출하는 데 사용되는 교체품은 첫 번째 모양 만 대체했습니다.
- 버그 수정 : Multiple = True 인 필드 선택의 경우 기본적으로 여러 옵션을 선택할 수 있습니다.
- 부착 필드 템플릿의 모든 문자열에 i18n을 추가했습니다
- 핀란드어 번역이 추가되었습니다
0.7.1 (2017 년 3 월 16 일)
- 바로 코드 서식을 변경하여 자체 폐쇄 트레일 슬래시 전에 공간을 추가하십시오.
- 긴 파일 이름으로 첨부 파일 미리보기의 정렬을 수정하십시오.
- 버그 수정 : 선택 필드에서 초기 값을 설정합니다 (이전에는 사용자가 필드와 상호 작용하지 않는 한 선택 필드에 대한 값이 설정되지 않습니다).
- 향상/수정 : Media Modal의 사본 하나를 재사용하고 Modal에 액세스 할 때마다 중복 마크 업을 생성하지 않고 폐쇄시 상태를 재설정하십시오.
- 호환성 : Select2.js 4.0.3의 "전체"버전을 사용하여 플러그인이 정식 버전을 큐에 넣을 것으로 예상되는 다른 플러그인과 충돌하지 않도록합니다.
- 호환성 :
SELECT2_NOCONFLICT
플래그를 추가하여 Select2.js 버전 3을로드하는 다른 플러그인과의 충돌을 방지하기 위해 고유 한 네임 스페이스에 select2를로드합니다. - 노르웨이어 번역이 추가되었습니다.
- 다중 코딩 스타일 수정.
0.7.0 (2016 년 11 월 18 일)
- 미디어에 "Post Element 추가"버튼을 추가합니다. "미디어 추가"버튼을 클릭 한 다음 메뉴에서 "Post Element 삽입"을 찾는 대신 한 번 클릭하여 바로가 코드 목록을여십시오.
- "용어 선택"필드 유형이 추가되었습니다.
- "사용자 선택"필드 유형이 추가되었습니다.
- 렌더링/편집/닫는 데 발사되는 새로운 후크가 추가되었으며 바로가 코드를 닫습니다. 사용자 지정 JavaScript 초기화 또는 정리가 필요한 필드 유형에 사용할 수 있습니다.
- 필드 선택 : 여러 선택 필드에 대한 전체 지원을 추가하십시오.
- 필드 선택 : 옵션의 사용자 정의 주문 지원.
- 필드를 선택하십시오 :
<optgroup>
의 지원 그룹화 옵션을 선택하십시오. - 첨부 필드 : 다중 선택을 지원합니다.
- 첨부 필드 : SVG 이미지 지원 (SVG 업로드가 플러그인 또는 테마로 활성화 된 경우).
- 버그 수정 :
encode=true
지정된 필드를 디코딩 할 때 퍼센트 부호를 처리합니다. - 버그 수정 : 편집 단축 코드 모달을 제기하기 위해 편집기의 단축 코드에서 2 번의 클릭이 필요한 문제 수정 문제.
- 버그 수정 : 수정 문제 수정 이름별로 단축 코드를 검색 할 때 여러 개의 단축 코드가 검색 문자열로 시작하면 첫 번째 만 반환됩니다.
- 버그 수정 : 비어 있지 않은 경우 속성에서 설명 필드 만 출력합니다.
- 호환성 : WP 4.1 및 4.2에서 미디어 모달을 처리하기위한 심을 제거하십시오.
- 호환성 : Select2의 최신 버전의 Select2를 사용하는 다른 플러그인과의 충돌을 피하기 위해 Select2 라이브러리를 4.0.3으로 업그레이드하십시오.
- 터키어 번역이 추가되었습니다.
- 핀란드어 번역이 추가되었습니다.
- 스웨덴어 번역이 추가되었습니다.
- 헝가리어 번역이 추가되었습니다.
0.6.2 (2015 년 11 월 12 일)
- 버그 수정 : 라디오 버튼 및 확인란에서 "변경"이벤트를 리터닝하여 바로가 코드 속성이 업데이트되도록합니다.
- 버그 수정 : get_shortcodes ()를 호출하기 전에
register_shortcode_ui
항상 실행되는지 확인합니다. 수정 Post register_shortcode_ui
hook을 사용할 때 Ajax 콜백을 선택하십시오.
0.6.1 (2015 년 11 월 9 일)
- 미디어 프레임 메뉴 항목을 클릭 할 때 JavaScript TypeError를 수정합니다.
- readme에서 링크를 수정합니다.
0.6.0 (2015 년 11 월 2 일)
- 제한된 HTML 지원을 허용하기 위해 옵션 인
encode=true
Argument를 지원합니다. 올바르게 디코딩하려면 속성을 shortcode_atts()
통해 실행해야합니다. - 바로가 코드 미리보기를 렌더링 할 때
SHORTCODE_UI_DOING_PREVIEW
상수를 정의하여 콜백이 tinymce에서 단축 코드의 다른 표현을 제공 할 수 있습니다. - 바로가 코드 속성에 대한 첨부 파일이 이미 선택된 경우, 열기 미디어 라이브러리에는 선택한 내용이 포함됩니다.
- 삽입 포스트 요소 UI에서 아이콘 세로 정렬을 정리했습니다.
- 모든 필드 HTML에 CSS 유틸리티 클래스를 추가했습니다. 예를 들어, 부착 필드는 이제
shortcode-ui-field-attachment
으로 래핑됩니다. - 등록시 단축 코드 UI 인수를 수정하기 위해 필터가 추가되었습니다.
- 예제 플러그인을 정리하여 훨씬 더 유용한 개발자 참조입니다.
- 별도의 Regex를 유지하는 대신 Core의 JavaScript Regex를 사용하여 단축 코드를 구문 분석합니다.
- 필드 레이블 및 설명에서 HTML을 허용합니다.
- 덴마크 번역이 추가되었습니다.
- 이탈리아 번역이 추가되었습니다.
- 독일어 번역이 추가되었습니다.
- 핵심 통합 : PHP 5.2를 완전히 지원합니다.
- 버그 수정 : UI에 등록되지 않은 경우 단축 코드 속성 및 내부 컨텐츠를 지속합니다. 이전에는 버려졌습니다.
- 버그 수정 : 게시물 선택 필드에 설명을 표시합니다.
- 버그 수정 : 속성 필드 변경 이벤트는
keyup
대신 input
이벤트에 바인딩됩니다. - 전체 릴리스 노트
0.5.0 (2015 년 8 월 26 일)
- 첨부 필드 : 축소판을 클릭하여 첨부 파일을 쉽게 변경할 수 있도록했습니다. 필드보기에 부착 메타 데이터가 추가되었습니다.
- 첨부 필드 : 이벤트를 트리거하기 위해 리팩토링 된 JavaScript.
-
range
입력 유형을 추가했습니다. - 더 안전하게 UI를 등록 할 플러그인 용
register_shortcode_ui
후크를 소개했습니다. - 미리보기 탭을 제거하여 Shattcake의 사용자 경험을 Core에 더 가깝게 만들어 미디어 모달의 별도의 미리보기보다 인라인 비주얼 미리보기가 선호됩니다.
- Jshint를 사용하여 JavaScript를 정리했습니다.
- 러시아어 번역이 추가되었습니다.
- 포르투갈어 번역이 추가되었습니다.
- 모든 클래스에 PHPDOC가 추가되었습니다.
- 버그 수정 : UI가 정의되지 않은 경우에도 바로가 코드의
inner_content
지속됩니다. - 버그 수정 : 바로 가스 케이크 뷰에서 ESC를 치면 이제 모달이 닫힙니다. (코어에서 고정)
- 버그 수정 : 시각적 편집기에서 바로 가스 케이크 미리보기가 선택되면 삭제를 치면 이제 바로가 코드가 제거됩니다. (코어에서 고정)
- 버그 수정 : 단축 케이크 '검색'기능은 더 이상 작은 화면 크기로 단축 코드 그리드와 시각적으로 충돌하지 않습니다. (코어에서 고정)
- 버그 수정 :
get_current_screen()->post_type
대신 get_post_type()
사용하므로 컨텍스트가 프론트 엔드에 올바르게 설정됩니다. - 전체 릴리스 노트
0.4.0 (2015 년 6 월 22 일)
- 기본 API를 위해 Carldanley/WP-JS-Hooks를 사용하여 바로가 코드 속성에 JS 콜백을 등록합니다.
- 부착 필드는 부착물의 미리보기가로드 될 때 로딩 표시기를 사용합니다.
- 중국어 번역이 추가되었습니다.
- 프랑스어 번역이 추가되었습니다.
- 스페인어 번역이 추가되었습니다.
- 버그 수정 : 프론트 엔드 컨텍스트에서 편집기가로드되면 치명을 방지합니다.
- 버그 수정 : 컬러 필드는
meta
인수도 지원합니다. - 버그 수정 : 속성이없는 단축 코드에서 후행 공백을 제거합니다.
- 버그 수정 : 편집기 CSS 경로에서 이중 슬래시를 제거합니다.
- 전체 릴리스 노트
0.3.0 (2015 년 4 월 27 일)
- Breaking Change : 우리는 마법의
content
속성에 대한 호환성 심을 제거했습니다. 내부 컨텐츠 편집을 지원하기 위해 이것을 사용하는 경우 inner_content
사용하려면 UI 등록을 변경해야합니다. - 새
post_select
게시물 목록에서 선택할 수있는 필드 유형. 검색 쿼리를 수정하기 위해 추가 query
매개 변수를 지원합니다. - 새로운
post_type
인수를 사용하여 단축 코드 UI는 특정 게시물 유형에 등록 할 수 있습니다. 주어진 단축 코드의 UI가 특정 게시물 유형에만 나타나려면 유용합니다. - 각 단축 코드 속성에 대해, 임의의 HTML 속성을 필드에 추가하기 위해
meta
인수를 지정할 수 있습니다. 기존 placeholder
논쟁에 대한 호환성 심을 추가했습니다. 이 호환성은 V0.4에서 제거됩니다. - 단축 코드를 삽입 할 때 UI는 단축 코드에 구성 할 속성이없는 경우 유용한 메시지를 표시합니다. 이전에는 사용자에게 비교적 빈 화면이 제시되었습니다.
- 이 예제 플러그인은 WordPress Admin을 통해 활성화 될 수 있습니다.
- 왼쪽 메뉴에서 "포스트 요소 삽입"을 클릭하면 단축 코드를 선택하는 데 효과적으로 백 버튼 역할을합니다.
- 편집 경험을 중심으로 언어는 편집하는 단축 코드를 반영합니다. 예를 들어, PullQuote Shortcode를 사용하면 "Post Element 편집"이 "PullQuote 편집"이됩니다.
- 네덜란드어 번역이 추가되었습니다.
- 소스 자바 스크립트 파일은 소스와 빌드 JavaScript 간의 명확성을 위해
js/src
로 이동했습니다. - Php_codesniffer를 사용하여 PHP 파일을 스캔합니다.
- 버그 수정 : 인용되지 않은 단축 코드 속성이 제대로 지원됩니다.
- 버그 수정 : 첨부 필드는 종속성을 올바르게 등록합니다.
- 버그 수정 : "포스트 요소 삽입"경험은 비주얼 편집기가 비활성화 될 때 작동해야합니다. 단축 케이크는 단지 Tinymce와 느슨하게 결합됩니다.
- 버그 수정 : 편집기 스타일은 치명을 방지하기 위해
after_setup_theme
에로드됩니다. - 전체 릴리스 노트.
0.2.3 (2015 년 4 월 8 일)
- Tinymce View 호환성 Shim에 전달 된 인수를 복원하여 WP 4.1 Backwards 호환성 문제를 수정하십시오.
0.2.2 (2015 년 4 월 6 일)
- WP 4.2 호환성에 대한 Tinymce보기 렌더링으로 전달 된 업데이트 인수. 이전에 통과 된 인수는 필요하지 않았으므로 제거는 거꾸로 호환되지 않습니다.
0.2.1 (2015 년 3 월 18 일)
- wp에서 jQuery의 사용을 jquery.noconflict () 모드를 존중해야합니다.
0.2.0 (2015 년 3 월 18 일)
- Browserify를 사용하여 JS가 추상화되었습니다.
- "포스트 요소 추가"UI에 대한 향상 : 알파벳순으로 분류 된 단축 코드; 레이블을 기반으로 검색합니다.
- iframes가 포함 된 단축 코드 미리보기를 선택하기가 훨씬 쉽습니다.
- WordPress 4.2 호환성.
- 전위 필드 목록에 컬러 피커가 추가되었습니다.
- 버그 수정 : IE11 호환성.
- 버그 수정 : 확인란 필드는 이제 선택 취소 할 수 있습니다.
- 전체 릴리스 노트.
0.1.0 (2014 년 12 월 23 일)
- 양식 필드에 대한 모든 HTML5 입력 유형을 지원합니다.
- 편집 경험 내 바로가 코드 미리보기 탭. }*“Post Elements”주변에서 UI를 다시 표지했는데, 이는“콘텐츠 항목”보다 더 설명 적입니다.
- 많은 버그 수정.
- 전체 릴리스 노트.