대표 이미지 표시 토글 상시 활성화
This commit is contained in:
@@ -603,7 +603,7 @@ const createPostPayload = (options = {}) => {
|
|||||||
excerpt: form.excerpt.trim(),
|
excerpt: form.excerpt.trim(),
|
||||||
content: normalizeMarkdownContent(form.content),
|
content: normalizeMarkdownContent(form.content),
|
||||||
featuredImage: form.featuredImage.trim() || null,
|
featuredImage: form.featuredImage.trim() || null,
|
||||||
showFeaturedImage: Boolean(form.featuredImage.trim() && form.showFeaturedImage),
|
showFeaturedImage: Boolean(form.showFeaturedImage),
|
||||||
isFeatured: form.isFeatured,
|
isFeatured: form.isFeatured,
|
||||||
seoTitle: toAdminPostStoredTitle(form.title),
|
seoTitle: toAdminPostStoredTitle(form.title),
|
||||||
seoDescription: form.excerpt.trim(),
|
seoDescription: form.excerpt.trim(),
|
||||||
@@ -780,7 +780,6 @@ const applyPickedImage = () => {
|
|||||||
*/
|
*/
|
||||||
const removeFeaturedImage = () => {
|
const removeFeaturedImage = () => {
|
||||||
form.featuredImage = ''
|
form.featuredImage = ''
|
||||||
form.showFeaturedImage = false
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -1902,7 +1901,6 @@ defineExpose({
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<label
|
<label
|
||||||
v-if="form.featuredImage"
|
|
||||||
class="admin-post-form__featured-image-display-toggle flex items-center justify-between gap-4 border-t border-[#e3e6e8] pt-5 text-sm"
|
class="admin-post-form__featured-image-display-toggle flex items-center justify-between gap-4 border-t border-[#e3e6e8] pt-5 text-sm"
|
||||||
>
|
>
|
||||||
<span class="admin-post-form__featured-image-display-copy flex min-w-0 items-center gap-3">
|
<span class="admin-post-form__featured-image-display-copy flex min-w-0 items-center gap-3">
|
||||||
@@ -1914,8 +1912,7 @@ defineExpose({
|
|||||||
</svg>
|
</svg>
|
||||||
</span>
|
</span>
|
||||||
<span class="admin-post-form__featured-image-display-label grid min-w-0 gap-0.5">
|
<span class="admin-post-form__featured-image-display-label grid min-w-0 gap-0.5">
|
||||||
<span class="font-bold text-[#15171a]">본문 상단 대표 이미지</span>
|
<span class="font-bold text-[#15171a]">대표 이미지 표시</span>
|
||||||
<span class="text-xs leading-snug text-[#8e9cac]">게시물 상세 제목 아래에 대표 이미지를 표시합니다.</span>
|
|
||||||
</span>
|
</span>
|
||||||
</span>
|
</span>
|
||||||
<span class="admin-post-form__featured-image-display-control relative inline-flex h-7 w-12 shrink-0 items-center">
|
<span class="admin-post-form__featured-image-display-control relative inline-flex h-7 w-12 shrink-0 items-center">
|
||||||
@@ -1923,7 +1920,7 @@ defineExpose({
|
|||||||
v-model="form.showFeaturedImage"
|
v-model="form.showFeaturedImage"
|
||||||
class="peer sr-only"
|
class="peer sr-only"
|
||||||
type="checkbox"
|
type="checkbox"
|
||||||
aria-label="본문 상단 대표 이미지 표시"
|
aria-label="대표 이미지 표시"
|
||||||
>
|
>
|
||||||
<span class="absolute inset-0 rounded-full bg-[#c8ced3] transition-colors peer-checked:bg-[#15171a]" aria-hidden="true" />
|
<span class="absolute inset-0 rounded-full bg-[#c8ced3] transition-colors peer-checked:bg-[#15171a]" aria-hidden="true" />
|
||||||
<span class="relative ml-1 size-5 rounded-full bg-white shadow transition-transform peer-checked:translate-x-5" aria-hidden="true" />
|
<span class="relative ml-1 size-5 rounded-full bg-white shadow transition-transform peer-checked:translate-x-5" aria-hidden="true" />
|
||||||
|
|||||||
@@ -1,5 +1,10 @@
|
|||||||
# 업데이트 요약
|
# 업데이트 요약
|
||||||
|
|
||||||
|
## v1.5.81
|
||||||
|
|
||||||
|
- 글쓰기 오른쪽 사이드에서 `대표 이미지 표시` 토글이 항상 보이고 동작하도록 정리했다.
|
||||||
|
- 대표 이미지를 나중에 추가해도 미리 정한 표시 설정이 유지된다.
|
||||||
|
|
||||||
## v1.5.80
|
## v1.5.80
|
||||||
|
|
||||||
- 본문 첨부 이미지는 업로드만으로 카드 썸네일을 만들지 않도록 정리했다.
|
- 본문 첨부 이미지는 업로드만으로 카드 썸네일을 만들지 않도록 정리했다.
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# 배포 가이드
|
# 배포 가이드
|
||||||
|
|
||||||
> 로컬 기준 v1.5.80에서 `npm run lint`, `npm run build` 검증을 통과했다. NAS 실제 컨테이너 기동과 도메인/프록시 접속 검증은 운영 배포 단계에서 진행한다.
|
> 로컬 기준 v1.5.81에서 `npm run lint`, `npm run build` 검증을 통과했다. NAS 실제 컨테이너 기동과 도메인/프록시 접속 검증은 운영 배포 단계에서 진행한다.
|
||||||
|
|
||||||
## 빌드 유형
|
## 빌드 유형
|
||||||
|
|
||||||
@@ -16,6 +16,12 @@
|
|||||||
|
|
||||||
## 로컬 개발
|
## 로컬 개발
|
||||||
|
|
||||||
|
### v1.5.81 참고
|
||||||
|
|
||||||
|
- 추가 DB 마이그레이션은 없다.
|
||||||
|
- 게시물 작성·수정 오른쪽 사이드에 `대표 이미지 표시` 토글이 항상 보이는지 확인한다.
|
||||||
|
- 대표 이미지가 없어도 해당 토글을 켜고 저장할 수 있으며, 이후 대표 이미지를 추가하면 상세 제목 아래 표시 설정이 유지되는지 확인한다.
|
||||||
|
|
||||||
### v1.5.80 참고
|
### v1.5.80 참고
|
||||||
|
|
||||||
- DB 마이그레이션 `054_add_post_show_featured_image.sql` 적용 필요.
|
- DB 마이그레이션 `054_add_post_show_featured_image.sql` 적용 필요.
|
||||||
|
|||||||
@@ -89,7 +89,7 @@
|
|||||||
- 공유 모달은 게시물 썸네일/제목/요약 미리보기, X/Bluesky/Facebook/LinkedIn/Email 링크, 링크 복사 액션을 제공한다.
|
- 공유 모달은 게시물 썸네일/제목/요약 미리보기, X/Bluesky/Facebook/LinkedIn/Email 링크, 링크 복사 액션을 제공한다.
|
||||||
- 공유·SEO 설명은 SEO 설명이 있으면 우선 사용하고, 없으면 게시물 요약, 요약도 없으면 본문에서 마크다운 기호를 제거한 짧은 텍스트를 사용한다.
|
- 공유·SEO 설명은 SEO 설명이 있으면 우선 사용하고, 없으면 게시물 요약, 요약도 없으면 본문에서 마크다운 기호를 제거한 짧은 텍스트를 사용한다.
|
||||||
- 홈 Latest·게시물 목록·태그 목록의 카드 설명도 동일하게 요약이 비어 있으면 본문에서 `createPostSummary`로 짧은 텍스트를 만든다. 목록용 설명은 문자열에 수동 말줄임을 붙이지 않고 `post-summary-clamp` 전용 클래스가 실제 표시 줄 끝에서 말줄임을 처리한다.
|
- 홈 Latest·게시물 목록·태그 목록의 카드 설명도 동일하게 요약이 비어 있으면 본문에서 `createPostSummary`로 짧은 텍스트를 만든다. 목록용 설명은 문자열에 수동 말줄임을 붙이지 않고 `post-summary-clamp` 전용 클래스가 실제 표시 줄 끝에서 말줄임을 처리한다.
|
||||||
- 게시물 상세 제목 아래 대표 이미지는 관리자 글쓰기의 `본문 상단 대표 이미지` 옵션이 켜진 게시물에서만 표시한다. 대표 이미지는 목록·공유용으로는 계속 사용할 수 있으며, 본문 상단 표시 기본값은 꺼짐이다.
|
- 게시물 상세 제목 아래 대표 이미지는 관리자 글쓰기 오른쪽 사이드의 `대표 이미지 표시` 옵션이 켜진 게시물에서만 표시한다. 해당 토글은 대표 이미지 유무와 상관없이 항상 활성 상태이며, 대표 이미지를 나중에 추가할 경우에도 미리 저장한 표시 설정을 유지한다. 대표 이미지는 목록·공유용으로는 계속 사용할 수 있으며, 본문 상단 표시 기본값은 꺼짐이다.
|
||||||
|
|
||||||
### 게시물 업로드 이미지 썸네일
|
### 게시물 업로드 이미지 썸네일
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,10 @@
|
|||||||
# 업데이트 이력
|
# 업데이트 이력
|
||||||
|
|
||||||
|
## v1.5.81
|
||||||
|
|
||||||
|
- 게시물 글쓰기: 오른쪽 사이드의 `대표 이미지 표시` 토글을 대표 이미지 유무와 상관없이 항상 보이고 동작하도록 수정.
|
||||||
|
- 게시물 글쓰기: 대표 이미지가 나중에 추가되어도 미리 저장한 표시 설정이 유지되도록 수정.
|
||||||
|
|
||||||
## v1.5.80
|
## v1.5.80
|
||||||
|
|
||||||
- 게시물 이미지 업로드: 본문 첨부 이미지까지 카드 썸네일을 생성하지 않도록 업로드 시점 자동 생성을 제거.
|
- 게시물 이미지 업로드: 본문 첨부 이미지까지 카드 썸네일을 생성하지 않도록 업로드 시점 자동 생성을 제거.
|
||||||
|
|||||||
4
package-lock.json
generated
4
package-lock.json
generated
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "sori.studio",
|
"name": "sori.studio",
|
||||||
"version": "1.5.80",
|
"version": "1.5.81",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "sori.studio",
|
"name": "sori.studio",
|
||||||
"version": "1.5.80",
|
"version": "1.5.81",
|
||||||
"hasInstallScript": true,
|
"hasInstallScript": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@nuxtjs/tailwindcss": "^6.14.0",
|
"@nuxtjs/tailwindcss": "^6.14.0",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "sori.studio",
|
"name": "sori.studio",
|
||||||
"version": "1.5.80",
|
"version": "1.5.81",
|
||||||
"private": true,
|
"private": true,
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"imports": {
|
"imports": {
|
||||||
|
|||||||
Reference in New Issue
Block a user